<SEC-DOCUMENT>0000912562-23-000009.txt : 20230222
<SEC-HEADER>0000912562-23-000009.hdr.sgml : 20230222
<ACCEPTANCE-DATETIME>20230222160433
ACCESSION NUMBER:		0000912562-23-000009
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		133
CONFORMED PERIOD OF REPORT:	20221231
FILED AS OF DATE:		20230222
DATE AS OF CHANGE:		20230222

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			GIBRALTAR INDUSTRIES, INC.
		CENTRAL INDEX KEY:			0000912562
		STANDARD INDUSTRIAL CLASSIFICATION:	STEEL WORKS, BLAST FURNACES & ROLLING & FINISHING MILLS [3310]
		IRS NUMBER:				161445150
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-22462
		FILM NUMBER:		23653043

	BUSINESS ADDRESS:	
		STREET 1:		3556 LAKE SHORE ROAD
		STREET 2:		P O BOX 2028
		CITY:			BUFFALO
		STATE:			NY
		ZIP:			14219-0228
		BUSINESS PHONE:		7168266500

	MAIL ADDRESS:	
		STREET 1:		GATEWAY EXECUTIVE PARK
		STREET 2:		3556 LAKE SHORE ROAD PO BOX 2028
		CITY:			BUFFALO
		STATE:			NY
		ZIP:			14219-0228

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	GIBRALTAR STEEL CORP
		DATE OF NAME CHANGE:	19930924
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>rock-20221231.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with Wdesk from Workiva--><!--Copyright 2023 Workiva--><!--r:494ce7ad-dd21-4422-be07-151863b91ba7,g:883578fa-a7f5-4214-bb5b-e80105339f54,d:891eeac0f86e4df7b4e8c19bdfd47fcf--><html xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:rock="http://www.gibraltar1.com/20221231" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns="http://www.w3.org/1999/xhtml" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:srt="http://fasb.org/srt/2022" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>rock-20221231</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:AmendmentFlag" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY18xLTEtMS0xLTc4NjA4_24b4acd5-7e22-4dab-84c2-04824ec7c4af">false</ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY18zLTEtMS0xLTc4NjA4_66318eb3-928a-49b1-97ab-c71cd83a798b">2022</ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY180LTEtMS0xLTc4NjA4_b0eba684-8b54-41b2-8592-7e967acd1c19">FY</ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY181LTEtMS0xLTc4NjA4_9c6a94c0-335c-4a51-b932-c6c9cd8a7771">0000912562</ix:nonNumeric><ix:nonNumeric contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" name="us-gaap:ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzIxOTkwMjMyNTg1MTI_cc8a4d64-9e7f-4e6b-a81a-9f0b19229b16">http://fasb.org/us-gaap/2022#GoodwillAndIntangibleAssetImpairment</ix:nonNumeric><ix:nonNumeric contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_2d1782bf-442c-4339-b6ee-027a31ee3839">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_ccd48544-48b8-4ce4-885c-7cb992fa852e">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric contextRef="ie9f0cf89203446ea80e9bc2562a71d2b_D20220101-20221231" name="rock:IncomeTaxStatueOfLimitationsExpirationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ0NzE_d000bffc-7cbf-4586-bee5-b23ff0114e19">P4Y</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="rock-20221231.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i888a542c0c4546dfa845c641c2ad5ac0_I20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="i64a4017db5b04733b0c2b560ec5f87b1_I20230221"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-02-21</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="ide0cba670a934b7fa6ed49872e0a383f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-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="i60c7ad643ee24947a0507767fd7af229_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib27155f7aba943d79ec120faa76c72cc_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic293a1eb0344401e83175208f94528cd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iac43c12b18c341d7b786b27eb503ed35_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1f2f9cce6699404a833413104919ce4e_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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="ie3983509898c478e9a8bbecfe502ed64_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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="i5122901a55b04dbfae33f1597b75c66b_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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="i123074e2cd1c4e7186ee79d3e7db5e8f_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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="ie30e8dc0ac464faea642c432df7aef2f_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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="i7e6fbd0487c147e2a4c30cd05cb44d5b_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifb0e745a89424ceb9337a1ba7911fd78_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i04634afcd3c9491d8d455f2951443e11_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember><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="if6775c337c2142e0a43f6f90bd4d2fb5_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember><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="ic54cbd171db94113b88cdb36b6ee6d76_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia63844f3738a4b5db27035bc3b17fbd0_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifbd110efb3794f18a6cc54166c3ba701_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic70acb87500f4a79946405a1f6a58999_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i50e273bab9d543bc8f7e428b18676a56_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5effa7766b414823a6b37abacb899a66_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5e7a6b0d487c42e989ebef27fc419fc0_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7bc646f1a61c478c89b5f830797418fa_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i24dc19df42dc4e49a91f11718670da8b_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1225272475884cc6bc34be3f6a6e3a4f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1191b15085d24a4090a0e6cf7f8a8754_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if4c54cc99046494ba560c270ccbc3879_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9e70b63e924649afa96b3f3565e42b26_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i83385c33271c449185e1f48b7c32fcc0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3d2b4833bc724d81af84c2be116ddc36_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie361ac8943624af59a34da5baada933f_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i42f7d8305bf74256aa08ab7219dcd4af_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icf0b08651dde4f8d94a7bde9dbce6a9a_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i976e866e5d78415f82e96b8a1a8f8bba_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia8189174c2d4405383f05c32cc8c5f9d_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iac9cad15749148fb8d6bcd2f6790d617_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if033831b782e49ff955d964e0bb5299b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="segment"><xbrli:measure>rock:segment</xbrli:measure></xbrli:unit><xbrli:context id="i27908b60c3e84604a696a0da2c41f62e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesAndAgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idbe6a8124fc44a00a6467aef510ebbfd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie54da7396361489495cbe337cf00b779_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1ea1ab49276343edb9a5e6c56f0e61e8_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="i98e1c3b3185f4ddcbe64b5c44936ee08_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i95ff1080bfe94f89a11b0c8c5f16d8b6_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icf48193410cf43ef90a3483df0c17674_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i189fd663bed442f5bd1e0f0305c11730_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandBuildingsAndImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if7710fe2fac7428aa8d7508ca7dc9997_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandBuildingsAndImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib56947beeb194a5a908e873e0702d475_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ied8c39d5f0ff4f1e977a523a36165cba_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie9f0cf89203446ea80e9bc2562a71d2b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id42b3ba54fe5400f99720a70c62e6a75_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i841c4b7ae582485d83be490f499f4416_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:BillingsinExcessofCostMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iafa9f88ca1a5425a9d9a2a3ab68bc2f5_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:BillingsinExcessofCostMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3a2270fdbe18406a99dc5af36308726a_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:BillingsinExcessofCostMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibd14b74b67ad4900b366da7049fabf98_D20220822-20220822"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-08-22</xbrli:startDate><xbrli:endDate>2022-08-22</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-08-22</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia53930dbdf4d433a9a1ee073b78ecc87_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie420fd6d67ea4026ac76cd01f8ae887e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i950fb400edd84bc0b1053d0f045f4bd2_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i23c6169a4f084952b8b81fb79a422cb7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="business"><xbrli:measure>rock:business</xbrli:measure></xbrli:unit><xbrli:context id="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iba42d8c107304be29ecfaed639e54bf3_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2bc68fc7389d4665936f44afe1c58d53_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3e16b98023f248ff90c852fdcd7a2623_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i61cb50863b25452db870ee255e5a8c82_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8bf47beeeac44a04a5f55b11927aaaf2_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if7639d49bdfc4003941beb06441de5c6_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8f277843f5534746b24281c4ee2014d5_D20201211-20201211"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-11</xbrli:startDate><xbrli:endDate>2020-12-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5e6f452b4a1b4e6a8b184d4c8f80496e_I20201211"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idb4bde9ae5a348e78d63923d447340b3_D20201015-20201015"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ArchitecturalMailboxesLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-15</xbrli:startDate><xbrli:endDate>2020-10-15</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9e9f7895818b484da5882e080d8e2452_I20201015"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ArchitecturalMailboxesLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-15</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0ef75e3c221f4f338c1bf51f38ce9576_D20200213-20200213"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:DeltaSeparationsLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-02-13</xbrli:startDate><xbrli:endDate>2020-02-13</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i902a884f64974d83822f51709064c20a_I20200213"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:DeltaSeparationsLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-02-13</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if86ca76cd65c4006b3692afadc0b02ae_D20200115-20200115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ThermoEnergySystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-15</xbrli:startDate><xbrli:endDate>2020-01-15</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i439e4e6ea5524e078df5e17c1e2b6d4f_I20200115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ThermoEnergySystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-15</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-15</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5cc82b0990cc4dfb8a6bdd944787604c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifca7e9995091438d9f29db951e63c3e1_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id976d25e9da5438eaf01269b17b7cc75_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iee76914c5a3a46ada1936808ffbf5332_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2154daa1d9f344679a5d40aaa4d8d1f0_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6ae678b7a3cb46f6abea5ea2e6935c0a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaf210ed4dc594bd0bd16f946f436a7e7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iabf1f8f4f96e4c75b1945a4982f727cd_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iffcf9f3e99d24cafbf555fcf67952107_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icb949c48d0124d1db3f745a0ef827873_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i62f610b3b97140f2b98e1f2951aa8141_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5f658b3ed6264fd99f84bf5b525b2ade_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i63ddff1a813649999f3234aa74dec939_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifcb6399157ce46b3ab6578faaa0799ac_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i26e2e96e9b424dc3931dcd7088766572_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i49718e9a7dff488e96157cf2b01ea7b1_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i64c401bebe194e8da22bd1d9ee5cb954_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if71ea0dc0ccb42fe9d884b3b42df66c9_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia980978b7aaa41c3a7838d24b52993e0_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i333fd532e777418bb2a4458a54d5087d_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4b1b166ea550472199d3c2e4dfbaa397_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i440bce1026014d699ffb16eb70be7748_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i74ebb29fe92148aab89177f0f20edfba_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i93429e7458594c2e953b224890378183_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3622765463ad433297deb9d47bcfb46c_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ied0814c367b446958b056acced90712d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie13564e143704ba78a69c6f2857d3f71_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3d37137cd4fe440481550ac83f0f08fd_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i36572c7ac0e74bb28ca7bb656743aecf_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id0f0d39e2c1a4fa6a83683917981fe44_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i89b997777cfc479cbbd4ef3e03aeeabf_D20211031-20211031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-10-31</xbrli:startDate><xbrli:endDate>2021-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="reporting_unit"><xbrli:measure>rock:reporting_unit</xbrli:measure></xbrli:unit><xbrli:context id="i28ed3266a0424e99ac87b56e62129621_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie3a7d0c314a24499b50a7c7fbd12721a_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i89da7e5c329e4105aa84f199f668c844_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic469bc0572314902853c3ad9e1d3baef_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i72e7b4f08fda409a971ae7455c53cc60_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:UnpatentedTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic50c252ace0543c7b187a1b6c1ee0fc4_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:UnpatentedTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iaffcc7b0c9354b07a05abe249f56522f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9f5c95a2686047609f20149ad733e751_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i042ca367b3054f458691848bac77b1c7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id68ad57c962249609b7ddaa9d04ac3f4_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7888d078e4f843edaf117043996952ed_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1dc5b3189a014aaf816b9491ac09dee8_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb286abff79f433bb164050d22b67bf2_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i390ed5e5398a4d0f8bde706fbda3f977_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id7bee0a4f4c04f22be0ab908a812d590_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i87eac64abb6b4190919865e4e52c33ab_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="debtcovenant"><xbrli:measure>rock:debtCovenant</xbrli:measure></xbrli:unit><xbrli:context id="ie128a3846c194d75bd402acbbd1a4fe9_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i72e5782bc3234021bc2a697ee85bfdde_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">rock:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7ad71497c76d470a84d354b521123b79_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id2456037a4904999b206b3a3b3b12e6e_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i491829aa14ff445087fe4d84630a451f_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">rock:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7c6612ecdb514a43b8940d7651e47159_I20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">rock:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i497e4dc4ca374e6f869a97d6180e3e4d_D20221208-20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-12-08</xbrli:startDate><xbrli:endDate>2022-12-08</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8864c40a209547638ebedf1fbf1f7123_D20221208-20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-12-08</xbrli:startDate><xbrli:endDate>2022-12-08</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0dd4765697774aa0b53e04ec0ca643d2_D20221208-20221208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-12-08</xbrli:startDate><xbrli:endDate>2022-12-08</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic0bce679a65c45d6b29a9ec16c6b6d10_I20190124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-01-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5b17fcbf0d4e40d7ba6715216de7c164_I20190124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-01-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if7ba4301de314a0ea4778486cdb23062_D20190124-20190124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-24</xbrli:startDate><xbrli:endDate>2019-01-24</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia6b99920cc0b47cd9139f7f7859da644_D20190124-20190124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-24</xbrli:startDate><xbrli:endDate>2019-01-24</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1a323de35a0e4ed79c546beae5e4d83f_D20190124-20190124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-24</xbrli:startDate><xbrli:endDate>2019-01-24</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i664dba56ce324a7a84153d83b9d28430_D20190124-20190124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-24</xbrli:startDate><xbrli:endDate>2019-01-24</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2131f3e7067e47028fbc6dbf4486512c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:SeniorCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2e00a01d8de24157995e47b11966bd92_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:SeniorCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id7e0272766e042deb09c8d7bf29912bf_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:SeniorCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i76b0f0e268d043b09e73783a49354a64_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">rock:A401kPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ief7806189c624d50965f724b3ad91ac6_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">rock:A401kPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if8d8c6e9addc4a84ab0953c320143ea7_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">rock:A401kPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idf8b2e4b662e4079a2de5600f10962ee_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8bc76c5e5bc4472888c9c5bffaf2af46_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iec3c4084131b4c27ac59fe2752c82bd7_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i775ce2acfd4f479eb91079a2f9fcd0a6_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="plan"><xbrli:measure>rock:plan</xbrli:measure></xbrli:unit><xbrli:context id="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3a361c2e35a94f0299b5ad792874480e_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i654d7b52bf0d44dcaadd0e6141fff694_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic6fb3ef74a9748c9bf2a4943b8c9ce16_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i52b6a2f097b04e359a67ed5126fb741d_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1db4e303323f4b4da1e32f1bd8fb3cef_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i93d83a6bef504435b7494d9cb5705de0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i05311f8972a44dfaae02e04365ab7ed8_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i07485c38abca452bab5802afcd841a70_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i05d994f7a8304ca09d7a49628f1e46fd_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9dc15d7b762f4f8786fc2f0819ef131a_I20220503"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:CommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:NonEmployeeDirectorsPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-05-03</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if70f323d342048b0aff53344ac311523_I20220504"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:CommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:NonEmployeeDirectorsPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-05-04</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i35da7e2535974c3f985d4aa66244b262_I20180504"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-05-04</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i333f727333a74cf8835cfdc0d0bf40da_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i37da9a71b45e47bda80c54f802690cb3_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandFifteenEquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ife54428f5bae415a958afbba89deb379_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:NonEmployeeDirectorsPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if3b28f29f8654fb38644d2e8f5a6c7bb_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2015PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i521f14e0f444475cba6d0358136ce841_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2015PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaf596457fd2842ff8d756f74b142b118_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2015PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i87a3975702e24b0a8e506f6418b4d8e5_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7ca3a95410fc4aadbabbe31d8a1fb927_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i12732f10c82a4193ae08cd52a26c3ea5_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib9cc28d5b75e49d5b3ae72b6c80a4ee8_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie72e3ce0a04b4a80a0eb5f9927d670b9_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i618d03ede4c34f7b8d844297505d0164_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ief83552b648c4de7913784604ee97941_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iae23fedcddf44d979e42f2c38a732827_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if43a4604c74848759a8bbab4e6a81aa6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1c774c478e0844d99442be11dc41033e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4827d903d760472d9a8e5693de24307a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i545d62b1a6f547d9ae836c5783f14e37_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8a478ce43a4d4484bef17790c569a64a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i77e53b35d6674f12acacf8f09c3e49fd_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3f01140fea6242ef9ade3e1ae480373d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9c74c9e35f984b23a6aa3697439dec2f_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9f0fdc742d974a3a9e7921bd12764d57_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id66b4e03f0e44ce19383390bbf30f112_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rock:SharebasedCompensationMeasurementReturnOnInvestedCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaf396751c7114ec9b112601dabb39141_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rock:SharebasedCompensationMeasurementGrossProfitThresholdMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6054511fdfeb4e00946479079f027f16_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rock:SharebasedCompensationMeasurementTotalShareholderReturnMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">rock:ExercisePriceRangeOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i30eeb572360a444687cf4f1786455f4d_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">rock:ExercisePriceRangeOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i38cae17618c143df862f8800ca9a3a77_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5231405b5fc7416abb675f49efbb9975_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0ad65e0eabf24a249dfefb2d94919c27_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i986ac747424845d489807f6438b4665b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i315cd57c109943679521192035347e33_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i42cbdaa65de645b6b771deddf4f01f16_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i90db669524424d7a93e78e1228bd42ad_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i60bd80b6b9a34d888f8c614f80a652f4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9ddd417da4ce430b8ed75fa12a9900d9_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7d334fc11e7344ca8b41f2f79f4aaf39_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3c866d4a56934156867914a30d42747f_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceSharesMarketConditionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9ec69f2a2f3d4689b1f34eddbae63b31_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceSharesMarketConditionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9ea0ebadd87a4b54bda9ceb4768018cf_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia734b50389e0476cb94df62ddbd4f9d5_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icb1fe569d47f4fbbb55606ef73735d8f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4c5101685f264c21b84bba3b53c5b581_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i67d73249f83a4f98ad9a4458048dbafc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2e1e472787084d00b78ff903e7523e71_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic7671d74549b483f869621f804a9bf70_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iae02fc9e4ad64cfba5c29bd54552416e_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ied78e4545b8d433e853fcab799ed452d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2b2e20c0caef44a882bfef5d6d426ccc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifa220c5a25d849c99605773d3cf52640_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:AccruedExpensesCurrentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4ddfeed1ae2842c68338f7d3a752ba37_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:NonCurrentLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic2f756bfa65a4c979874c5ef250317a0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:AccruedExpensesCurrentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6dae7c6bf20a4152ac70cef8f60f448d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:NonCurrentLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i165b9446497e4588a98219722216535c_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i17939686689243ebbbe2ee842d9ef194_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i930b4b829e46464d8b28d88edcec3ed6_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia77e82f6fba44e7cbfb58c000d393766_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie5f43f67274444859364f93c14051faf_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iae9e35db404446b9860afc58484c10f9_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic753417107234c3a8a4bd0b0e8e4c908_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if48290fab268427aad7de6ccfec05cff_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i09954123688144c990bd164885fb1b93_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic9662d503bf04b7a9318b1d725f12705_I20210223"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-02-23</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-02-23</xbrli:startDate><xbrli:endDate>2021-02-23</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic654781faab64814b777cd2681362361_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib272e75884f9475f844fa8b4b9e2e0a9_D20200630-20200630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ApartmentTourApplicationBusinessMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-06-30</xbrli:startDate><xbrli:endDate>2020-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="facility"><xbrli:measure>rock:facility</xbrli:measure></xbrli:unit><xbrli:context id="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ief3874caed944767832e61940fb24010_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i45c7964e33af433eb4a807a5353dd710_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iafd13dad52a244fe8c23e99242ee61c8_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iba9c650d738747a2ac239a7124dc9d82_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ida1166cf063645c2ae303d35faf48820_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rock:SellingGeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0f1488a28ad0418caff93c9d40bd09d3_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rock:SellingGeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ieb46dc1bb0264e97b683bb8e999646b7_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rock:SellingGeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2f557da28680480aa47dbaedd8addd27_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i160e40f0d6b64250ab288482e07b4d75_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6ac4cd9abaf54a7b9341f1689083684e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3eeed6de8a694410925a55f57c53f891_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i93ccdef323fe44f7af1e2d598642810c_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</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="i606b02a914e644578da3701cbd0d6206_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i698a586b50514af8806a5f504ae5c2ff_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2e934cf5324d4c9092293ca06e4e22b5_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0059adf753fa4e0ba7720534154c39f5_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if8d1a98ebe74472893afcc5433a0f4f6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i111a97b689604e879d56f14b17890abc_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i869d08be871044d49eabb09d69de0d7d_D20220101-20220331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesAndAgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i60b596a3d4bd473c91a8a5d697da7dbb_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib1b3e591b04d4db282b65aef95d18298_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic23634df90da43eba654dcbf13a1a25e_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaba4a164c3c2455093d990d4759232a1_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i522f8989270a4929aef98ff7b39f90b8_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib741179ea0294bdead78b270f0daf503_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6f3b83f3e41943e1b929e07ef325953f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i24687447981245569bcd8a66827a2383_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i35e9b659622843179eac557f47830575_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i53a3ff74d8a3431fb702036ea2250ca3_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia024c32336d54193abc35a7cec004b22_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic897e3a5a34b41629ff3e8e3eecfea5c_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0fa156d1fd3e4bcab8e0f6b9aa80f64d_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i79e3e4b34a52405d8524a12a7e4b37c4_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9ed3fe44794045ffb4246f6ff677f8b6_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i625af8856ca9471d8d96392464096c20_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idda8bba80a524f4ba58246d35e3514f1_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iede4e392ee2641ddba8694142f8c302d_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0678936455bf45789e72201128d5f331_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i625d1e6d332242c5948db9708e0b6766_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idec42e19198e484da403534f5dd6fb19_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5b93ecf38b69436a9e47e1cf87f6f9bf_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i69dfb26490e5474d895d2ad31f8c3ad6_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie54708b0a142430d94d5e77598ffb979_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i761c1d240aeb47c49dd52ec21d0f52fa_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7d5940f4d0994a899a9621ee6a085a48_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iabc0c22753be41148c061c9b5ff1ef5b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9e97e2bedcef4d9ea73f04853fd05f0c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icecda5027596436db26a6b91d2f54b1c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i363716532bad4cd0980783a148a92cf9_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if2844c05b9d64df9a119f6ebf35fafea_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i92c16fe3a70f4e49b13fc1ae97837fdd_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6df611de3fcf4e4ea5f715367a0b0785_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic78aa20b5b7e459ea9ae6c86b16c41ac_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idec35ea930d04e55aeffbc908a770f71_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i971e5962d2e6470587e3528742ba3ac5_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7692a1ee76c64f6c90276630b19f5315_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idbcb8892b57a452bafbb13673dc4b633_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6568f28f534649339a377c1457b00cf7_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie5c73db8e09f4d2a8adca505eed6f629_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i909c4ea4d9124a3d9e46e4ebefb3a1e9_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i88799f7c82a94bc9818931b3e9053b77_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2c6fcadea56c411595e911bda16adecc_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i36f3cd03900e4cc2a90aa3f625ff95d0_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i12ac3349377f480da07ba7ee35977f8b_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifc9dd5822864450d8ca48589af121a8b_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6c8309ea7d5e418495864a84218dd3e4_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i57a2da47c8f042d9807e61198d85019d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7e9e49ddcaa8437a8c36f414904c5fff_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibbdf974085fb4bc69c5ad773356c29e7_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4ffdc21072b94ed2a766bc8e772c7fc4_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3311e70241234683b6f0365ef2d635dd_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2970908a29054cbc92537cec77a27af9_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i552e925085c14096ad706c1beea1f01e_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaf315dd0aa484d9da6b58670384cc282_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9be42e649bb74294b67c9df056f9b01f_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i461c6c1e72be4da18e34aa4191acd71a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib700003226794c949b86d5ae230de3be_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i62bcb654a5b049099051d1bd5cb4dbad_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if1c60ecb4c5645b78964809d127f9dcd_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib8e1d522438d41a09f93defccbdc4762_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i70dc3acdc32f4a8193f3c0fbb04b4b03_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if2f0bffb079a4b5c984352237ab43db0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iae0c6a40e67047bcaf2fd03193af79d2_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i395d7b63ae9245f483796e43e9548d31_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i870a510a83a24f6eaab1a91af6c51fa1_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idbb6309168014c9188b1ac31b880af8b_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000912562</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_1"></div><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:18.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:700;line-height:120%">Washington, D.C. 20549</span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:58.479%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:700;line-height:120%;text-decoration:underline">FORM <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk3_1bc64a71-4c03-4e94-8f9c-23d82f079f25">10-K</ix:nonNumeric> </span></div><div style="margin-bottom:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:58.479%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:2pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="margin-top:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:512.25pt"><tr><td style="width:1.0pt"></td><td style="width:13.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:495.25pt"></td><td style="width:1.0pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:DocumentAnnualReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6Y2YzZTQ2MTdkZDM2NGM0NGE4NmUyNTM4NmU5Mzg3ZGUvdGFibGVyYW5nZTpjZjNlNDYxN2RkMzY0YzQ0YTg2ZTI1Mzg2ZTkzODdkZV8wLTAtMS0xLTc4NjA4_76f2306a-8a60-4b04-803c-ea66dcc07d81">&#9746;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15 (d)&#160;OF THE SECURITIES EXCHANGE ACT OF 1934</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">For the fiscal year ended <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8xMjc_25aaa18e-e443-4dbf-9d16-dff2d688e4b1"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:CurrentFiscalYearEndDate" format="ixt:date-monthname-day-en" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8xMjc_a4d6286f-cef8-436d-a01d-08058a843275">December 31</ix:nonNumeric>, 2022</ix:nonNumeric> </span></div><div style="margin-top:3pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">OR</span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:512.25pt"><tr><td style="width:1.0pt"></td><td style="width:12.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:496.00pt"></td><td style="width:1.0pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OWUwNDEyMjIxYzY0NGUwMWI2ZDlkNTAyMjczYTliMzAvdGFibGVyYW5nZTo5ZTA0MTIyMjFjNjQ0ZTAxYjZkOWQ1MDIyNzNhOWIzMF8wLTAtMS0xLTc4NjA4_f0aeb2d1-e683-4a4e-b11b-ad2c9327542f">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15 (d)&#160;OF THE SECURITIES EXCHANGE ACT OF 1934</span></td></tr></table></div><div style="margin-bottom:3pt;margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">For the transition period from </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"> to </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div style="margin-bottom:3pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Commission File Number <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAz_db0bcdce-c9bd-44ce-96a0-67268f91f3b9">000-22462</ix:nonNumeric> </span></div><div style="margin-bottom:3pt;text-align:center"><img src="rock-20221231_g1.jpg" alt="rock-20221231_g1.jpg" style="height:45px;margin-bottom:5pt;vertical-align:text-bottom;width:361px"/></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:16pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA0_8e912002-4f21-4c9b-b93c-211882e2b83d">GIBRALTAR INDUSTRIES, INC.</ix:nonNumeric> </span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:457.50pt"><tr><td style="width:1.0pt"></td><td style="width:67.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:54.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:85.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:43.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:49.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:145.75pt"></td><td style="width:1.0pt"></td><td colspan="3" style="display:none"></td></tr><tr style="height:11pt"><td colspan="18" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:700;line-height:100%">(Exact name of registrant as specified in its charter))</span></td><td colspan="3" style="display:none"></td></tr><tr style="height:14pt"><td colspan="9" style="border-bottom:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18wLTAtMS0xLTc4NjA4_c13a31a8-73cd-4b8b-af43-ac07f572f5c2">Delaware</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18wLTUtMS0xLTc4NjA4_b626e684-5069-461f-8461-604de6497161">16-1445150</ix:nonNumeric></span></td><td colspan="3" style="display:none"></td></tr><tr style="height:11pt"><td colspan="9" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:700;line-height:120%">(State or other jurisdiction of incorporation or organization)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:700;line-height:120%">(I.R.S. Employer Identification No.)</span></td><td colspan="3" style="display:none"></td></tr><tr style="height:15pt"><td colspan="6" style="border-bottom:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTAtMS0xLTc4NjA4_ca564bc9-fdec-434d-b57a-0571b50ce754">3556 Lake Shore Road</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityAddressAddressLine2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTItMS0xLTc4NjA4_8640cde5-6b13-4352-93ea-aae091524754">P.O. Box 2028</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:0.5pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTMtMS0xLTc4NjA4_0d020f5c-9bfd-40fe-97a2-51f662d61dd3">Buffalo ,</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:0.5pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTQtMS0xLTc4NjA4_7a470d0e-99d9-4350-8a75-dee16b7f1696">New York</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTUtMS0xLTc4NjA4_b3e9628e-3b4c-4de7-a7b1-4d34bd94051c">14219-0228</ix:nonNumeric></span></td><td colspan="3" style="display:none"></td></tr><tr style="height:11pt"><td colspan="15" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:700;line-height:120%">(Address of principal executive offices)</span></td><td colspan="3" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:700;line-height:120%">(Zip Code)</span></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Registrant&#8217;s telephone number, including area code: </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">(<ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk4_8ad3f3f0-16a7-4fab-ab52-b9818488443e">716</ix:nonNumeric>) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA1_ddcdbf1c-b28c-44cd-8f75-1d06efb09a51">826-6500</ix:nonNumeric> </span></div><div style="margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:511.50pt"><tr><td style="width:1.0pt"></td><td style="width:189.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:88.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:4.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:217.75pt"></td><td style="width:1.0pt"></td></tr><tr style="height:12pt"><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Securities registered pursuant to Section 12(b) of the Act:</span></div></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Title of each class</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Trading Symbol</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Name of each exchange on which registered</span></td></tr><tr style="height:12pt"><td colspan="3" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6NWEzNGIyNTJlZGU0NDQwNDlhYmFmNzE3YjQ2YzQ2ZDgvdGFibGVyYW5nZTo1YTM0YjI1MmVkZTQ0NDA0OWFiYWY3MTdiNDZjNDZkOF8xLTAtMS0xLTc4NjA4_4dae2f22-c6bb-43cb-a04e-e1a8aaa78697">Common Stock, $0.01 par value per share</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6NWEzNGIyNTJlZGU0NDQwNDlhYmFmNzE3YjQ2YzQ2ZDgvdGFibGVyYW5nZTo1YTM0YjI1MmVkZTQ0NDA0OWFiYWY3MTdiNDZjNDZkOF8xLTItMS0xLTc4NjA4_415ba110-479a-467c-a459-d2794e644677">ROCK</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:0.5pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6NWEzNGIyNTJlZGU0NDQwNDlhYmFmNzE3YjQ2YzQ2ZDgvdGFibGVyYW5nZTo1YTM0YjI1MmVkZTQ0NDA0OWFiYWY3MTdiNDZjNDZkOF8xLTQtMS0xLTc4NjA4_1074cf90-7b5f-4374-8235-6208ffc4c342">NASDAQ Stock Market</ix:nonNumeric></span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Securities registered pursuant to Section&#160;12(g) of the Act:</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"> None</span></div></td></tr></table></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityWellKnownSeasonedIssuer" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA2_86952aba-a3f4-4817-96b0-43f7b69bcb51">Yes</ix:nonNumeric>&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;&#160;No&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark if the registrant is not required to file reports pursuant to Section&#160;13 or Section&#160;15(d) of the Act.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160; Yes&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160; <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityVoluntaryFilers" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAw_cca2efde-536c-40d4-a95c-b200046c42bf">No</ix:nonNumeric>&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9746;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2)&#160;has been subject to such filing requirements for the past 90 days.&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAx_836e7722-f3c6-44aa-9655-d56a66d28dc3">Yes</ix:nonNumeric>&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA3_81005553-7b35-4567-aa3e-12dbd5592020">Yes</ix:nonNumeric>&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">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 definition of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;small reporting company,&#8221; and "emerging growth company" in Rule 12b-2 of the Exchange Act.</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:511.50pt"><tr><td style="width:1.0pt"></td><td style="width:121.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:18.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:37.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:121.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:18.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:37.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:121.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:18.25pt"></td><td style="width:1.0pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6MGUyOTc3ZjQwZjZkNGEwYjk0ZDUwOWQ4NzNiODE0YmEvdGFibGVyYW5nZTowZTI5NzdmNDBmNmQ0YTBiOTRkNTA5ZDg3M2I4MTRiYV8wLTAtMS0xLTc4NjA4_e2ab60e9-cbf2-46c2-ad64-c76a4c3fec37">Large accelerated filer</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#9746;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accelerated&#160;filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Emerging growth&#160;company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6MGUyOTc3ZjQwZjZkNGEwYjk0ZDUwOWQ4NzNiODE0YmEvdGFibGVyYW5nZTowZTI5NzdmNDBmNmQ0YTBiOTRkNTA5ZDg3M2I4MTRiYV8wLTctMS0xLTc4NjA4_08ca7fe3-d3a3-4e47-87fc-4270c72c9292">&#9744;</ix:nonNumeric></span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Non-accelerated filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Smaller&#160;reporting&#160;company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6MGUyOTc3ZjQwZjZkNGEwYjk0ZDUwOWQ4NzNiODE0YmEvdGFibGVyYW5nZTowZTI5NzdmNDBmNmQ0YTBiOTRkNTA5ZDg3M2I4MTRiYV8xLTQtMS0xLTc4NjA4_d226cf8b-2165-4b12-acd7-41719e931d36">&#9744;</ix:nonNumeric></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">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.&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:IcfrAuditorAttestationFlag" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk1_572c3998-b7ce-46b4-bf51-cb9044da5a19">&#9746;</ix:nonNumeric></span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements.&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant's executive officers during the relevant recovery period pursuant to &#167;240.10D-1(b).&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act).&#160;&#160;&#160;&#160;Yes&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:EntityShellCompany" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk2_0ead22ca-72c2-45a1-97f2-1c9a979db223">&#9744;</ix:nonNumeric></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9746;</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Aggregate market value of voting Common Stock held by non-affiliates of the registrant as of June&#160;30, 2022 was: $<ix:nonFraction unitRef="usd" contextRef="i888a542c0c4546dfa845c641c2ad5ac0_I20220630" decimals="-8" name="dei:EntityPublicFloat" format="ixt:num-dot-decimal" scale="9" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yNjA1_51881cf1-9846-46a8-804c-fa15b3a75591">1.2</ix:nonFraction> billion.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">As of February&#160;21, 2023, the number of shares of Common Stock outstanding was: <ix:nonFraction unitRef="shares" contextRef="i64a4017db5b04733b0c2b560ec5f87b1_I20230221" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yNjY0_6e2b508c-fc3d-4947-bdb0-acf8dac42810">30,786,457</ix:nonFraction>. </span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:DocumentsIncorporatedByReferenceTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAy_ad73036b-a7b8-4558-91ce-a533da1056dd" escape="true"><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">DOCUMENTS INCORPORATED BY REFERENCE</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Portions of the Registrant&#8217;s Definitive Proxy Statement to be filed for its 2023 Annual Meeting of Stockholders</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">are incorporated by reference into Part III of this Annual Report on Form 10-K.</span></div></ix:nonNumeric><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_7"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Form 10-K Index</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.538%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:82.062%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.100%"></td><td style="width:0.1%"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Page<br/>Number</span></td></tr><tr style="height:15pt"><td colspan="9" style="padding:0 1pt"></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_13">PART I</a></span></div></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_16">Business</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_16">3</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;1A</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_19">Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_19">12</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;1B</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_22">Unresolved Staff Comments</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_22">21</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;2</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_25">Properties</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_25">21</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;3</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_28">Legal Proceedings</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_28">22</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;4</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_31">Mine Safety Disclosures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_31">22</a></span></div></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_34">PART II</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;5</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_37">Market for Registrant's Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_37">23</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item 6</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_40">Reserved</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_40">23</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;7</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_43">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_43">23</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;7A</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_61">Quantitative and Qualitative Disclosures About Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_61">33</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;8</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_64">Financial Statements and Supplementary Data</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_64">34</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;9</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_148">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_148">72</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;9A</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_151">Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_151">72</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item 9B</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_154">Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_154">75</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item 9C</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_157">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_157">75</a></span></div></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_160">PART III</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;10</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_163">Directors, Executive Officers</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_163"> and Corporate Governance</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_163">76</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;11</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_166">Executive Compensation</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_166">76</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;12</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_169">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_169">76</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;13</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_172">Certain Relationships and Related Transactions</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_172">,</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_172"> and Director Independence</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_172">76</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;14</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_175">Principal Accountant Fees and Services</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_175">76</a></span></div></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_178">PART IV</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item&#160;15</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_181">Exhibits and Financial Statement Schedules</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_181">77</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Item 16</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_187">Form 10-K Summary</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_187">80</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_190">SIGNATURES</a></span></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_10"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Safe Harbor Statement</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain information set forth herein includes statements that express our opinions, expectations, beliefs, plans, objectives, assumptions or projections regarding future events or future results and, therefore, are, or may be deemed to be, &#8220;forward-looking statements.&#8221; These forward-looking statements can generally be identified by the use of forward-looking terminology, including the terms &#8220;believes,&#8221; &#8220;estimates,&#8221; &#8220;anticipates,&#8221; &#8220;expects,&#8221; &#8220;seeks,&#8221; &#8220;projects,&#8221; &#8220;intends,&#8221; &#8220;plans,&#8221; &#8220;may,&#8221; &#8220;will&#8221; or &#8220;should&#8221; or, in each case, their negative or other variations or comparable terminology. These forward-looking statements include all matters that are not historical facts. They include statements regarding our intentions, beliefs or current expectations concerning, among other things, our results of operations, financial condition, liquidity, prospects, growth, competition, strategies and the particular markets in which we operate. By their nature, forward-looking statements involve risks and uncertainties because they relate to events and depend on circumstances that may or may not occur in the future. We believe that these risks and uncertainties include, but are not limited to, those described in Item&#160;1A &#8220;Risk Factors.&#8221; Those factors should not be construed as exhaustive and should be read with the other cautionary statements herein.  Although we base these forward-looking statements on assumptions that we believe are reasonable when made, we caution you that forward-looking statements are not guarantees of future performance and that our actual results of operations, financial condition and liquidity and the development of the particular markets in which we operate may differ materially from those made in or suggested by the forward-looking statements contained herein. In addition, even if our results of operations, financial condition and liquidity and the development of the particular markets in which we operate are consistent with the forward-looking statements contained in this document, those results or developments may not be indicative of results or developments in subsequent periods. Given these risks and uncertainties, you are cautioned not to place undue reliance on these forward-looking statements. Any forward-looking statements that we make herein speak only as of the date of those statements, and we undertake no obligation to update those statements or to publicly announce the results of any revisions to any of those statements to reflect future events or developments. Comparisons of results for current and any prior periods are not intended to express any future trends or indications of future performance, unless expressed as such, and should only be viewed as historical data.</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_13"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">PART I</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_16"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;1.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Business</span></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">The Company</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. (the "Company") is a leading manufacturer and provider of products and services for the renewable energy, residential, agtech and infrastructure markets. The Company's mission is to make life better for people and the planet, fueled by advancing the disciplines of engineering, science, and technology. The Company is innovating to reshape critical markets in sustainable power, comfortable and efficient living, and productive growing throughout North America. Furthermore, the Company strives to create compounding and sustainable value for its stockholders and stakeholders with strong and relevant leadership positions in higher growth, profitable end markets focused on addressing some of the world's most challenging opportunities.  The foundation of the Company's strategy is built on three core pillars: Business System, Portfolio Management, and Organization Development.</span></div><div style="margin-top:12pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">Business System reflects the necessary systems, processes, and management tools required to deliver consistent and continuous performance improvement, every day.  The Company's business system is a critical enabler to grow, scale, and deliver its plans.  The Company's focus is on deploying effective tools to drive growth, improve operating performance, and develop the organization utilizing 80/20 and lean quote-to-cash initiatives along with digital systems for speed, agility and responsiveness. The Business System pillar challenges existing operating paradigms, drives day-to-day performance, forces prioritization of resources, tests the Company's business models, and drives new product and services innovation.</span></div><div style="margin-top:12pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">Portfolio Management is focused on optimizing the Company&#8217;s business portfolio in higher growth markets with leadership positions while ensuring its financial capital and human resources are effectively and efficiently deployed to deliver sustainable, profitable growth while increasing its relevance with customers and shaping its markets. In 2022, the Company most recently acquired Quality Aluminum Products ("QAP") in the Residential segment and made the decision to divest its non-core Processing business within the Agtech segment to help achieve these objectives.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">Organization Development drives the Company&#8217;s continuous focus on ensuring it has the right design and structure to scale the organization in order to execute the Company&#8217;s plans and meet commitments.  The Company aspires to make its place of work the "Best Place to Work", where focus is on creating an environment for our people to have the best opportunity for success, continue to develop, grow and learn. At core of this pillar is the Company&#8217;s development process focused on helping employees reach their potential, improve performance, develop career roadmaps, identify ongoing education requirements, and respective succession plans.  The Company believes doing so helps it attract and retain the best people to execute its business plans.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Corporate Social Responsibility </span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate Social Responsibility is a key consideration in everything, from the products the Company makes and the suppliers the Company engages with, to the Company's employee policies, business strategies, and future plans.  The Company is committed to making a difference in the lives of the people the Company's business touches, and to creating meaningful impact every day through the Company's work and relationships.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A sense of responsibility to people and the planet is woven into the core values that define the Company's purpose and drive the Company's culture.  These values include:</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Make it better - The Company challenges itself and its way of thinking every day to exceed the needs of the Company's customers.</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Make it right - The Company cares about doing the right thing for each other, customers, and communities by holding the Company to the highest standards of ethics and safety.</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Make it together - The Company works collaboratively with customers and each other - teamwork sets the Company apart. The Company works to create a culture that is inclusive of different perspectives and experiences.</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Make an impact - The Company is here to make a difference. The Company drives change and delivers meaningful value to customers, investors, and community.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's efforts are focused on delivering positive impact in three key areas:</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Our People: The safety, well-being, and success of our people is our top priority. We are dedicated to developing their potential as professionals and future leaders, drawing on the unique abilities of each team member to build a rich, inclusive culture of difference-makers.</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Our Communities: Sharing our success with the communities where we live and work is vital to our purpose. By supporting local nonprofits and institutions as investors and volunteers, we help build resilience and strengthen the bonds that will help our communities thrive.</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The World: Our work is firmly rooted in making life better for people and the planet; we innovate in the service of possibility, acting responsibly to create positive, lasting change in our world. We promote sustainability across our value chain, developing products and services for our customers that reduce environmental impact and improve quality of life.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's businesses reflect the Company's purpose, values and desire to make a positive impact on the world. Since 2014, the Company has been transforming itself to focus on solving some of humanity's most challenging opportunities - from harnessing energy and growing food more sustainably to living and working with greater ease, efficiency, and comfort.  Transforming the Company positions it to play a significant role in sustainable development issues, building partnerships with key players that help advance critical technologies, strengthening the Agtech, Renewables, Residential and Infrastructure businesses, and enabling the Company to better respond to humanity's evolving needs.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Segments</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company serves customers primarily in North America including renewable energy (solar) developers, home improvement retailers, wholesalers, distributors, institutional and commercial growers of food and plants, and contractors.  At December 31, 2022, the Company operated 33 facilities, which were comprised of 25 manufacturing facilities, one distribution center, and seven offices, and were located within 15 states, Canada, China, and Japan.  The Company's operational infrastructure provides the necessary scale to support regional and national customers in each of its markets.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company operates and reports its results in the following four reporting segments: </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:13.8pt">Renewables</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:13.8pt">Residential</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:13.8pt">Agtech</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:13.8pt">Infrastructure</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the primary products, applications, and end markets for each segment:</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;text-decoration:underline">Renewables Segment</span></div><div style="margin-top:12pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:33.892%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.728%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:27.596%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.731%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:27.453%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Products &amp; Services</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Applications</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">End Users</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Design, engineering, manufacturing and installation of solar racking and electrical balance of systems</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Commercial &amp; distributed generation scale solar installations on any type of terrain</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Solar developers; power companies; solar energy EPC contractors</span></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;text-decoration:underline">Residential Segment</span></div><div style="margin-top:12pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:33.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:27.554%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.455%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:27.411%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Products</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Applications</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">End Market</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Roof&#160;and foundation ventilation products</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Ventilation and whole-house air flow</span></td><td colspan="3" rowspan="7" style="padding:0 1pt"><div style="text-align:center"><img src="rock-20221231_g2.jpg" alt="rock-20221231_g2.jpg" style="height:156px;margin-bottom:5pt;vertical-align:text-bottom;width:33px"/></div></td><td colspan="3" rowspan="7" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Residential: new construction and repair and remodeling</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Single point &amp; centralized mail systems and electronic package solutions</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Secure storage for mail and package deliveries</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Retractable awnings &amp; gutter guards</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Sun protection; gutter protection</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rain dispersion, trims and flashings, other accessories</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Water &amp; protection from natural elements</span></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;text-decoration:underline">Agtech Segment</span></div><div style="margin-top:12pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:33.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:27.554%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:30.627%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Products &amp; Services</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Applications</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">End Users</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Provide growing and processing solutions including the designing, engineering, manufacturing, full scope construction, &amp; maintenance &amp; support of greenhouses &amp; indoor growing operations</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Retail, fruits &amp; vegetables, flowers, cannabis, commercial, institutional &amp; conservatories, car wash structures</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Large scale indoor produce growers; retail garden centers; conservatories and botanical gardens; floriculture growers; agricultural research; car washes; cannabis growers</span></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;text-decoration:underline">Infrastructure Segment</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:33.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:27.554%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:30.627%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Products</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Applications</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">End Market</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Engineered solutions for bridges, highways &amp; airfields, including</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">structural bearings, expansion joints, pavement seals, elastomeric concrete, bridge cable protection systems</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Preserve functionality under varying weight, wind, temperature and seismic conditions</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Bridge and elevated highway construction, airport pavements</span></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s operating businesses have established strong positions in attractive end markets by building core capabilities in innovation, new products and services, manufacturing and field operations, business systems, quality performance, along with a healthy balance sheet and the strength of our people. The Company will continue its focus of time, talent, and energy on strengthening its position in each market it serves.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Attractive End Markets</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company's businesses are focused on solving global challenges accelerating renewable energy generation, increasing the supply of locally-grown and more sustainably-produced food and plants, maintaining healthy and efficient home environments, supporting mail and package delivery, and improving the country&#8217;s transportation infrastructure and ways of transporting people.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Value-Added Products and Services</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">  The Company provides optimal solutions to its customers: racking, foundation, and electrical systems for photovoltaic (PV) solar systems, commercial growing greenhouses for biologically grown food, cannabis, and other plants; roof-related ventilation and weather protection to support healthy home environments; mail and package storage for home and retail and non-retail sites; and structural bearings, expansion joints and rubber products for bridges and other transportation structures.  The Company's products and services are highly engineered, supported with intellectual property, and driven by effective business systems and IT infrastructure.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Commitment to Customer &amp; Quality</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company strives to be connected directly with its end customers, where it receives unfiltered feedback on performance, insight on customer problems and opportunities, and cooperation on ideas for new products, services, and business model optimization.  The percentage of the Company's total revenue generated from products and services that were sold directly to the end user was approximately 45% and the Company expects this to grow in future years.  The Company's commitment to quality is a core operating tenet, and its quality management systems are designed to ensure the Company delivers to customer and stakeholder expectations while meeting statutory and regulatory requirements related to its products and services.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Strong Liquidity Profile</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The Company strives to manage its cash resources to ensure sufficient liquidity to fund growth initiatives, support the seasonality of its businesses and manage effectively through economic cycles. As of December 31, 2022, the Company's liquidity was $322.1 million, including $17.6 million of cash and $304.5 million of availability under its revolving credit facility. The Company believes its low leverage and ample borrowing capacity, along with enhanced flexibility in its Credit Agreement, provides the Company with the financial capacity to fund its ongoing business requirements, strategic initiatives, and acquisition opportunities.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent Developments</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 8, 2022, the Company entered into a Credit Agreement (the "Credit Agreement"), and concurrently with entering into the Credit Agreement, the Company paid off all amounts owed under the Sixth Amended and Restated Credit Agreement dated as of January 24, 2019,  which was terminated with no prepayment penalties. The Credit Agreement provides for a revolving credit facility and letters of credit in an aggregate amount equal to $400 million. The Company can request additional financing to increase the revolving credit facility to $700 million or enter into a term loan of up to $300 million subject to conditions set forth in the Credit Agreement.  The Credit Agreement contains two financial covenants.  As of December 31, 2022, the Company was in compliance with both financial covenants.  The Credit Agreement terminates on December 8, 2027.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 22, 2022, the Company purchased all the issued and outstanding membership interests of Quality Aluminum Products ("QAP"), a manufacturer of soffit, fascia, trim coil, rain carrying products and aluminum siding for an aggregate purchase price of $52.1 million.  The acquisition of QAP was financed primarily through borrowings under the Company's revolving credit facility.  The results of operations of QAP have been included in the Residential segment of the Company's consolidated financial statements from the date of acquisition.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In May 2022, the Company's Board of Directors authorized a share repurchase program of up to $200 million of the Company's issued and outstanding common stock. The program has a duration of three years, ending May 2, 2025. Repurchases may be made, from time to time, in amounts and at prices the Company deems appropriate, subject to market conditions, applicable legal requirements, debt covenants and other considerations. Any such repurchases may be executed using open market purchases, privately negotiated agreements or other transactions. The repurchase program may be suspended or discontinued at any time at the Company's discretion. As of December 31, 2022, the Company has repurchased 1,997,366 shares for an aggregate price of $85.9 million under this repurchase program.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">6</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the first quarter of 2022, the Company committed to a plan to sell its Processing business, a business within the Company's Agtech reportable segment, as part of its portfolio management strategy in order to focus its resources on the higher growth and more profitable growing business within the Agtech segment. The Processing business was classified as held for sale as of March 31, 2022 and remains under such classification as of December 31, 2022.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Customers and Products</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's customers are located primarily throughout North America. One customer, a home improvement retailer which purchases from the Residential segment represented 14%, 13%, and 14% of the Company's consolidated net sales for the years ended December 31, 2022, 2021 and 2020, respectively. No other customer in any segment or segments accounted for more than 10% of the Company's consolidated net sales.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's products are primarily distributed to its customers using common carriers. The Company generally ships directly from its manufacturing plants to ensure on-time delivery while maintaining efficiency. Customers and product offerings by segment are described below.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Renewables</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Renewables segment designs, manufacturers and installs solar energy mounting systems including foundation, racking, and electrical balance of systems for developers, EPCs and owners / operators of solar fields. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">An integral part of solar projects is the design, engineering, and fabrication of unique structures and electrical balance of systems, as well as the field installation of both whether applied to a ground-mounted or carport system. The Company provides both fixed tilt and tracker racking systems along with either a screw or pile driven foundation systems. Most of the Company's production is completed using computer numerical control machines, roll forming machines, laser cutters and other fabrication tools. The structural metal components are designed, engineered, fabricated and installed in accordance with applicable building codes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">New products introduced in recent years include screw-based racking and foundation solutions, operating software  to optimize solar energy investments, and single-axis tracker systems. The Company's screw-based racking foundation offers rapid and secure installation on any terrain. The Company's operating software enables its team to optimize solar project design utilizing solar irradiance data and topography analysis to quickly and automatically generate multiple potential layouts for complex projects. The single-axis tracker systems are able to support and adapt to a variety of site conditions while also reducing the typical civil work preparation and installation costs associated with projects. The patented design eliminates complexities incorporated in traditional systems, simplifying the operations and maintenance of the system, along with streamlining the installation process.  Other products offered include solar racking systems for both carports and pile-driven ground mount systems. Solar racking systems for carports serve as protection for cars from the effects of the sun and intense heat while providing a renewable energy source. Similarly, solar racking systems installed on idle land, such as solid waste landfills, or on challenging, rocky terrain, converts such land into a useful property by providing clean renewable power generating capabilities.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Residential</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Residential segment serves both the residential repair and remodeling and new housing construction markets in North America with products including roof and foundation ventilation products, single point and centralized mail systems and electronic package solutions, outdoor living space products (sun-shading), rain dispersion systems, and other construction accessories. The Company's residential product offerings are sold through major retail home centers, building material wholesalers, building product distributors, buying groups, roofing distributors, residential contractors, property management companies, postal services distributors and providers, and online direct to end consumers. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's mail and electronic package solutions include single mailboxes, cluster style mail and parcel boxes for single and multi-family housing, and electronic package locker systems.  The Company's remaining residential product offerings consist of roof edging and flashing, soffits and trim, drywall corner bead, metal roofing and accessories, rain dispersion products, including gutters and accessories, and exterior retractable awnings. Each of these product offerings can be sold separately or as part of a system solution.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">7</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company strives to improve its product-solution offerings while adapting to local and regional building code and new products recently introduced include electronic parcel lockers, roof top safety kits, chimney caps, heat trace coils, remote-controlled deck awnings for sun protection, and high-efficiency ventilation products. The Company's ventilation and roof flashing products provide protection and extend the life of residential structures while providing a safer, healthier environment for residents.  The Company's building products are manufactured primarily from galvanized and painted steel, anodized and painted aluminum, and various resins. The Company's electronic parcel lockers and parcel room systems provide multi-family communities and businesses a secure storage solution to handle both package deliveries and receipt of other goods, along with helping retail businesses and their customers to transact via buy on line, pick up in store transactions. The Company's cluster box mail delivery products provide delivery cost savings to the postal service while offering secure storage for delivered mail and packages.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leverages its production capabilities and supply chain across the U.S. while maintaining the capability to support the many local and regional customer requirements. The production facilities and processes are designed to provide a broad, but locally focused product range of residential products, and includes automated roll forming and injection molding, welding, stamping, and finished painting. The Company maintains its equipment through daily maintenance and a preventive maintenance program. In some cases, the Company sources products from third-party vendors to optimize cost and quality in order to provide the very best and affordable solution for customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Agtech</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Agtech segment designs, manufactures, and installs high-technology turnkey greenhouse facilities designed for large-scale indoor growing production of fruits and vegetables, plants and flowers, and agricultural research and development facilities with over 100 universities in the United States.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Large scale greenhouse facilities are unique to a particular type of plant, vegetable, flower, or fruit, and require unique structures, growing systems, and the integration of the structure and the systems.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Infrastructure</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Infrastructure segment serves highway and bridge construction and airports through commercial and transportation contractors. The Company's products include expansion joints, structural bearings, rubber pre-formed seals and other sealants, elastomeric concrete, and bridge cable protection systems. Infrastructure's products are manufactured primarily from plate and structural steel along with various resin and rubber based materials. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">New products introduced in recent years extend the infrastructure products into new markets. For example, its engineered pavement sealants for roadways are now being installed on airport runways, its structural bearings for elevated highways and bridges have been installed on offshore oil production platforms, and its corrosion-protection products for cable-suspension bridges are now marketed and sold internationally.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Engineering and Technical Services</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's business segments employ engineers and other technical personnel to perform a variety of key tasks which include the identification and implementation of improvements to its manufacturing process, redesign of its products for better performance, the development of new products and identification and execution of cost reduction activities. In addition, the Company's engineering staff employs a range of software to design highly specialized and technically precise products. In the Renewables, Agtech, and Infrastructure segments, drawings are approved and stamped by state licensed professional engineers as required by individual projects. Technical service personnel also work in conjunction with the Company's sales force in the new product development process to determine the types of products and services that suit the particular needs of customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Suppliers and Raw Materials</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's business is required to maintain sufficient quantities of raw material inventory in order to accommodate customers delivery requirements. Accordingly, the Company plans its purchases to maintain raw materials at sufficient levels to satisfy the anticipated needs of customers. The Company has implemented enterprise resource planning systems along with a corporate wide SIOP (Sales, Inventory, Operations Planning process) to better manage inventory, forecast customer orders, enable efficient supply chain management, and allow for timely counter-measures to changing market conditions.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The primary raw materials the Company purchases are flat-rolled, structural and plate steel, aluminum coil and extrusions, and resins. The Company purchases flat-rolled and plate steel and aluminum at regular intervals on an as-needed basis, primarily from the major North American mills, as well as, a limited amount from domestic service </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">centers and foreign steel importers. Substantially all of its resins are purchased from domestic vendors, primarily through distributors, with a small amount purchased directly from manufacturers. Management continually evaluates improvements in the Company's purchasing practices across its geographically dispersed facilities in order to streamline purchasing across similar commodities.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company purchases natural gas and electricity from suppliers in proximity to its operations.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Intellectual Property</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company actively protects its proprietary rights by the use of trademark, copyright, and patent registrations. While the Company does not believe that any individual item of its intellectual property is material, the Company believes its trademarks, copyrights, and patents provide the Company with a competitive advantage when marketing its products to customers. The Company also believes its brands are well recognized in the markets it serves and the Company believes the brands stand for high-quality manufactured goods at a competitive price. These trademarks, copyrights, and patent registrations help the Company maintain product leadership positions for the goods it offers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Sales and Marketing</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, approximately 45% of the Company's revenues were generated from products and services that were sold directly to the end user, with the remainder of revenues generated through retailers, wholesalers and distributors, down from 56% in 2021. The Company's sales process regularly includes a competitive bid process, and its reputation for product and service quality and meeting delivery requirements make the Company a preferred provider for many customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company shifted its marketing focus in 2021 to build an enhanced cohesive brand strategy&#8212;ensuring the Company has a defined purpose and values and ensuring the Company's brand messages reflect the needs of the market and the capabilities of its businesses. The businesses in the Company's Renewables segment were integrated and rebranded under the brand name Terrasmart at the beginning of 2022 and the Company's  businesses in its Agtech segment were consolidated under the brand name Prospiant during 2021. In their markets, both brands reflect the Company's unique value to customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2021, the Company began to expand and upgrade its Customer Relationship Management (CRM) system, which work continued into 2022, thus improving its visibility into sales account status and enabling cross-sell and up-sell opportunities. The CRM also provides important aggregate market data.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Backlog</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Backlog represents the value of the total confirmed orders at a point in time for which performance obligations have not yet been satisfied. Only actual orders with signed contracts are included in the Company's backlog. This metric is useful as it reflects the committed amount the Company expects to recognize as revenue in the near-term.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While the majority of the Company's products have short lead time order cycles, the Company has aggregated approximately $299 million of backlog from continuing operations at December 31, 2022 compared to $344 million at December 31, 2021. The backlog primarily relates to certain business units in the Company's Renewables, Agtech, and Infrastructure segments. The Company believes that the performance obligations related to the majority of its backlog will be satisfied and related revenue recognized during 2023.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Competition</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company operates in highly competitive markets with several competitors participating in each of its end markets. The Company goes to market with a focused and broad range of high quality products, executes with speed and industry-leading service, value-based pricing and project management and field operations in its Agtech and Renewables businesses.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Seasonality</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s end markets have historically experienced seasonal demand fluctuation, with lower demand typically in the first and fourth quarters. Levels of residential and commercial construction can be cyclical and can depend on interest rates, availability of financing, inflation, employment, spending habits, consumer confidence and cost and availability of skilled labor. Furthermore, general economic forces, such as tax credit expirations and imposed tariffs, the impact of the COVID-19 pandemic, and changes in the Company&#8217;s products and customer mix </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">9</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">can and have shifted traditional seasonal fluctuations in revenue over the past few years. As the pandemic is subsiding and tax credits for the Company's renewable energy customers begin to stabilize, the Company has seen a shift back towards traditional seasonality with the fourth quarter of 2022 being slower than experienced in 2021 and 2020. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Governmental Regulation</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's production processes involve the use of environmentally regulated materials. The Company believes that the Company operates its business in material compliance with all federal, state and local environmental laws and regulations, and does not anticipate any material adverse effect on its financial condition or results of operations to maintain compliance with such laws and regulations. However, the Company could incur operating costs or capital expenditures in complying with new or more stringent environmental requirements in the future or with current requirements if they are applied to its manufacturing facilities or distribution centers in a way the Company does not anticipate. In addition, new or more stringent regulation of the Company's energy suppliers could cause them to increase the price of energy.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's operations are also governed by many other laws and regulations covering its labor relationships, the import and export of goods, the zoning of its facilities, taxes, its general business practices, and other matters. The Company believes that it is in material compliance with these laws and regulations and does not believe that future compliance with such laws and regulations will have a material adverse effect on its financial condition or results of operations.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Human Capital - Organization Development</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The foundation for the Company's focus on organizational development is built on two fundamental beliefs:</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The Company's ability to perform and deliver shareholder value is dependent on our people, and</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The Company strives to create an environment where our people can have the best chance to thrive, which the Company refers to internally as creating the "Best Place to Work."</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's "Best Place to Work" initiative engages the entire organization, with areas of focus that include Health and Safety, Education and Development, Diversity and Inclusion, Compensation and Employee Benefits, and Communication and Employee Engagement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company employed 2,117 full-time employees and 20 part-time employees as of December 31, 2022.  Of the Company's 2,137 total employees, 876 were classified as salary and 1,261 classified as hourly. The Company also employed approximately 329 full-time equivalent temporary agency employees. Approximately 6% of the Company's U.S. workforce was represented by unions through two collective bargaining agreements ("CBAs") as of December 31, 2022. Both of the Company's CBAs will expire and are expected to be renegotiated in 2024. The Company considers its employee relations to be good.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Health and Safety</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company expects each team member of the Company to follow the Company's safety standards and practices, support the Company's key safety initiatives, be accountable to themselves and each other, and be part of safety solutions.  The Company believes all accidents and near-misses are preventable as the Company strives to create a zero incidents work environment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has continued to invest in the Company's safety organization, and implemented a disciplined safety management and reporting process, measuring and reviewing the Company's safety results continuously in each location. The Company's CEO reviews safety performance monthly, including recordable incidents, near misses, and first aid cases. Safety performance and best practices are also reviewed quarterly with the entire organization during company-wide Town Hall meetings and with the Company's Board of Directors during quarterly board meetings.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Each of the Company's businesses have a safety team that assesses all recordable incidents and near misses to identify mitigating actions to prevent accidents in the future.  The Company's businesses also identify additional safety investments required for training, education, equipment, and processes as part of the Company's annual budget and capital planning procedure.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is continuously evolving its crisis management plans as the Company gains experience, reviews industry best practices, and continues to develop more effective tools, processes, and policies.  In an emergency, the Company's priorities are to protect the welfare of our people and to maintain business continuity.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Diversity and Inclusion</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company supports and encourages a culture where diversity of thought flourishes and all employees feel appreciated, included, and know they have an equal opportunity to develop, grow, and succeed based on their performance.  The Company believes demonstrating respect for our people and valuing their perspectives and their contributions is critical to cultivating the Company's best and most successful work environment, a belief that is foundational for the Company's &#8220;Best Place to Work&#8221; initiative.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Key demographics for the Company's employees are shown below.  While the figures below are in total, the Company evaluates its organization against the diversity of the communities that the Company operates in, with a goal of being representative at the community level.</span></div><div style="margin-bottom:3pt;margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">2022 Workforce Composition (Gender and Age)</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:416.25pt"><tr><td style="width:1.0pt"></td><td style="width:148.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td></tr><tr style="height:38pt"><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Employee Age Groups</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Female</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Male</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not Specified</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total by Age Group</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">% by Age Group</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&lt; 30 years of age</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">345</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">16.1%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30 - 49 years of age</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">282</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">716</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">998</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">46.7%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50+ years of age</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">532</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">794</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">37.2%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">622</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,513</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2,137</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">As a percentage</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">29.1%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">70.8%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">0.1%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:13pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Number of 2022 Employees by Employment Type (by Gender)</span></div><div style="margin-bottom:1pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:416.25pt"><tr><td style="width:1.0pt"></td><td style="width:148.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:48.25pt"></td><td style="width:1.0pt"></td></tr><tr style="height:26pt"><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Employee Type</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Female</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Male</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not Specified</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total by Type</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">% by Type</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Salary</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">282</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">594</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">876</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">41.0%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Hourly</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">340</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">919</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,261</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">59.0%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">622</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,513</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2,137</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:13pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">2022 Ethnic Background of Employees</span></div><div style="margin-bottom:1pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:267.75pt"><tr><td style="width:1.0pt"></td><td style="width:202.75pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:1.00pt"></td><td style="width:1.0pt"></td><td style="width:1.0pt"></td><td style="width:58.00pt"></td><td style="width:1.0pt"></td></tr><tr style="height:26pt"><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ethnic Background</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">% of Employees</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">White</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62.1%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Hispanic or Latino</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13.8%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Black or African American</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.6%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asian</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Not Specified</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.3%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Two or More Races</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.4%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Hawaiian/Pacific Islander</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.7%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">American Indian/Alaska Native</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.6%</span></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company believes in building a team that includes people who bring diversity of thought, experience, and perspective to its organization.  The Company recognizes that its organization and the communities in which the Company operates will continue to evolve and grow, which will require that the Company remain focused on the following initiatives:</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Continue the Company's mandatory and annual education and development program for the Company, including the Board of Directors, and evolve the curriculum as needed</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Continue to map the Company's organization with the communities it operates in to ensure the make-up of the Company's team is representative of the community itself</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Implement and upgrade business systems across the Company to give the Company the capability to gather and analyze data, derive conclusions, and develop action plans for implementation</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Communicate the Company's progress through monthly business reviews with the Company's leadership teams, quarterly communications with its teams, and quarterly reviews with the Company's Board of Directors</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Build the most effective talent acquisition framework to attract the best candidates with the following objectives:</span></div><div style="margin-top:6pt;padding-left:72pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8211;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:12.44pt">Build diversity into the Company's recruiting process with its partner recruitment firms and labor agencies, universities, and trade schools, and ensure these partners deliver diverse slates of candidates for the Company's hiring needs, and</span></div><div style="margin-top:6pt;padding-left:72pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8211;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:12.44pt">Strengthen the Company's outreach to academic institutions, industry associations, local businesses, and affinity groups to broaden opportunities for diverse talent</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Be proactive with the Company's customers and supply chain partners to find ways to work together in promoting positive social development</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leadership Development</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company reimagined the scope and objectives of its leadership development program in 2021.  The multi-year effort that emerged will establish a foundation for excellence in leadership.  The basis of the Company's program now includes multiple learning paths to meet the development needs of employees at all levels, including ethics compliance, leadership development, continuous improvement, diversity and inclusion, and function-specific learning and certification programs.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Gibraltar Leadership Program core curriculum, launched to 194 leaders in 2022, is a two-day program with modules on servant leadership, skilled collaboration, accountability at work, taking control of conflict, emotional intelligence, and communicating as a manager.  In 2023, the Company will continue to offer this program to both new and existing leaders, and will expand the program to include additional modules on influence, change management and coaching for development. The Company also maintains its commitment to ethical leadership with quarterly ethics training for all employees, and furthermore, also encourages and supports employees who pursue training and development to build their functional knowledge and expertise through continuing education and certification programs related to the employees' functional area.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Internet Information</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Copies of the Company&#8217;s Proxy Statements on Schedule 14A filed pursuant to Section 14 of the Securities Exchange Act of 1934 and Annual Reports on Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K, and amendments to those reports filed or furnished pursuant to Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934 are available free of charge through the Company&#8217;s website (www.gibraltar1.com) as soon as reasonably practicable after the Company electronically files the material with, or furnishes it to, the Securities and Exchange Commission.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_19"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;1A.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Risk Factors</span></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's business, financial condition and results of operations, and the market price for its common stock are subject to numerous risks, many of which are driven by factors that cannot be controlled or predicted. The following discussion, as well as other sections of this Annual Report on Form 10-K, including &#8220;Part II, Item 7, Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations,&#8221; describe certain business and other risks affecting the Company. In conjunction with reviewing the forward-looking statements and other information contained in this Annual Report on Form 10-K, consideration should be given to the risk factors described below as well as those in the Safe Harbor Statement at the beginning of this Annual Report on Form 10-K. These risks are not the only risks to which the Company is exposed. The Company's business operations and the market for its securities could also be adversely affected by additional factors that are not presently known to the Company, or that it currently considers to be immaterial to its operations.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Risks Related to the Company's Business Operations</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The volatility of the commodity market with respect to the Company's principal raw materials and component parts, or substantial decreases in the availability of the Company's principal raw materials and component parts, has impacted, and could continue to impact, the Company's business, results of operations, and cash flows.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's principal raw materials are commodity products primarily consisting of steel, aluminum, and resins. The Company also purchases component parts such as glass for greenhouse roofing systems thus resulting in exposure to changes in the price and availability of glass, and furthermore, although not purchased by the Company, the Company also has exposure related to the availability of solar panels which has impacted the installation of, and which can and has reduced demand for, the Company's solar racking projects, as experienced in 2022.  As the Company has seen with the broader market dynamics in 2022, and potentially continuing in 2023, availability and pricing of raw materials can be volatile due to a number of factors beyond its control, including general economic conditions, domestic and worldwide supply and demand, labor costs and availability, competition, freight costs and transportation, import duties, tariffs, and currency exchange rates. The Company has been impacted by cost increases and disruptions to the Company's supply deliveries, which disruptions have subsided in the latter part of 2022.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company may not be successful in passing along pricing increases to its customers or in its efforts to mitigate the impact of supply chain disruptions. The failure by the Company's suppliers to deliver raw materials or component parts according to schedule, or at all, has </span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">resulted in manufacturing delays, capacity constraints, project delays, cost inflation and logistics delays</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and has affected, and may continue to affect, the Company's ability to meet its customers' needs. Furthermore, the failure of any sourced raw materials or components to conform to the Company's specifications could also result in delays in its ability to timely deliver, and may have an adverse impact on the Company's relationships with its customers and its ability to fully realize the revenue expected from sales to those customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, commodity price fluctuations and increased competition could force the Company to lower its prices or to offer additional services or enhanced products at a higher cost to the Company, which could reduce the Company's gross profit, net income, and cash flow and cause the Company to lose market share. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Macroeconomic factors outside of the Company's control may adversely affect its business, its industry, and the businesses and industries of many of its customers and suppliers.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Macroeconomic factors have a significant impact on the Company's business, customer demand and the availability of credit and other capital, affecting the Company's ability to generate profitable margins. The Company's operations are subject to the effects of domestic and international economic conditions, including global industrial production rates, inflation, deflation, interest rates, availability of capital, debt levels, consumer spending, energy availability, commodity prices, and the effects of governmental initiatives to manage economic conditions, including government monetary and trade policies, tax laws and regulations. Tariffs placed on imported products used by the Company's customers, such as solar panels, could impact cost and availability of these products to the Company's customers which could impact the demand for the Company's products or services. In addition, fluctuations in the U.S. dollar impact the prices the Company charges and costs it incurs to export and import products. The Company is unable to predict the impact on its business of changes in domestic and international economic conditions. The Company currently faces challenging market conditions, and domestic or global economies, or certain industry sectors of those economies that are key to the Company's sales, may further deteriorate, which could result in a corresponding decrease in demand for the Company's products and negatively impact the Company's results of operations and financial condition.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In reference to aforementioned tariffs on imported solar panels, the United States currently imposes antidumping and countervailing duties ("AD/CVD") on certain imported solar panels and components from certain countries in Southeast Asia. The AD/CVD can change over time pursuant to annual reviews conducted by the U.S. Department of Commerce ("USDOC"), and a change in duty rates could have an adverse impact on the Company's operating results. In early 2022, the USDOC was petitioned to investigate alleged circumvention of AD/CVD on Chinese imports of solar panels and components produced in other countries in Southeast Asia. In March 2022, the USDOC announced that it would investigate the circumvention alleged in the petition and in December 2022, it issued a preliminary report that found occurrences of the alleged circumvention.  Concurrent with this investigation, in June  2022, the President of the United States issued an Executive Order to suspend any tariffs that result from this investigation for two years.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Furthermore, in June 2022, the Uyghur Forced Labor Prevention Act ("UFLPA") was enacted. The UFLPA requires traceability of components of imported goods to validate that the components are not sourced from areas in the Xinjiang region of China, which may be held at U.S. customs until the importer is able to prove where they have been sourced. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As the timing and progress of many of the Company's customers&#8217; projects depend upon the supply of solar panels and components, the Company's operating results have been impacted by the disruption resulting from the above investigation and validation procedures. The Company's operating results could be further adversely impacted by any final negative circumvention determinations made by the USDOC and continued timing lag of review by U.S. customs.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The success of the Company's business depends on the Company's senior management team, as well as other key employees and the Company's ability to attract, retain, develop and motivate a skilled and diverse workforce.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's success is dependent on the management and leadership skills of its senior executive and divisional management teams. The Company has had recent changes in the senior executive team that were planned and/or are expected to be mitigated, however, the Company cannot assure you that the Company will be able to retain its existing senior management personnel, or that the Company will have a successor prepared and available upon any loss of such personnel, or that the Company will be able to attract additional qualified personnel through external recruitment when needed. The Company has not entered into employment agreements with any of its senior management personnel.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, the Company may not be able to successfully compete for, attract, retain, develop or motivate a skilled and diverse workforce that the Company's business may require. The Company's business is dependent on engineers and other technical personnel to execute a variety of key responsibilities which include, but are not limited to, the identification and implementation of improvements to the Company's manufacturing process, redesign of the Company's products for better performance, the development of new products, and the identification and execution of cost reduction activities. Also, technical service personnel work in conjunction with the Company's sales force in the new product development process to determine the types of products and services that suit the particular needs of the Company's customers. Furthermore, the Company's business may be adversely impacted by the availability of labor at its manufacturing and distribution facilities, or in the field at its customers' project sites. The unexpected loss of a member of the Company's senior management team, key employee or highly-skilled associate, including due to an increase in aggressive recruiting for talent in the current labor market, or the Company's inability to attract and retain additional personnel could deplete the Company's institutional knowledge base, erode the Company's competitiveness and prevent the Company from successfully executing its business strategy. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The COVID-19 pandemic has significantly impacted worldwide economic conditions and adversely impacted, and may continue to adversely impact the Company's business, results of operations, financial condition, and cash flows.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The COVID-19 pandemic began to impact the Company's operations late in the first quarter of 2020 as government authorities imposed mandatory closures, work from home orders and social distancing protocols, which resulted in temporary curtailment of some operations and increased costs to operate certain facilities, and has continued to impact the Company's operations as new strains of the COVID-19 virus have been identified.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2021 and to a lesser extent in 2022, the COVID-19 pandemic, as well as broader market dynamics have resulted in impacts to the Company's business, including increased material cost inflation, labor availability issues (due to illness and otherwise) and logistics challenges and costs increases and were impacted by supply constraints for materials and commodities used in the Company's operations. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">It is not possible to predict the ultimate impact of the COVID-19 pandemic, as well as the emergence of new virus strains and availability of effective treatment on the Company's business, results of operations, financial position or cash flows, and the duration of such impact may vary dramatically by geography and line of business. However, while the COVID-19 pandemic subsides, the Company may experience continued adverse impacts of this pandemic on the Company's business and financial statements, including through disruptions to the supply chain, limiting access to the Company's distribution channels, reducing the availability of the Company's workforce and subcontractors and heightened cybersecurity risk, all of which may pose material risk to the Company's results of operations, financial condition, and cash flows. Further, the COVID-19 pandemic may exacerbate the potential </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">14</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">impact of the other risks described herein on the Company's results of operations, financial condition and cash flows.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">A significant portion of the Company's net sales are concentrated with a few customers. The loss of any of those customers would adversely affect the Company's business, results of operations, and cash flows. </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A loss of sales, whether due to decreased demand from the end markets the Company serves, the loss or bankruptcy of any significant customer in these markets, a decrease in the prices that the Company can realize from sales of its products to customers in these markets, or a significant decrease in business from any of the Company's major customers, could have a significant adverse effect on the Company's profitability and cash flows. The Company's ten largest customers accounted for approximately 41%, 38%, and 35% of the Company's net sales during 2022, 2021, and 2020, respectively, with its largest customer, a retail home improvement center, accounting for approximately 14%, 13% and 14% of the Company's consolidated net sales during each of the years 2022, 2021, and 2020, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company's business is highly competitive and increased competition could reduce the Company's gross profit, net income, and cash flow.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The principal markets that the Company serves are highly competitive. Competition is based primarily on product functionality, quality, price, raw material and inventory availability, and the ability to meet delivery schedules dictated by customers. The markets in which the Company operates are characterized by changing technologies and introductions of new products and services, so the Company also faces competition from the introduction by competitors of new products or technologies. The Company competes in its principal markets with companies of various sizes, some of which have greater scale and financial and other resources than the Company, as well as have better established brand names and may be better able to withstand a change in conditions in the markets the Company serves. Increased competition could force the Company to lower its prices or to offer additional services or enhanced products at a higher cost to the Company, which could reduce the Company's gross profit, net income, and cash flow and cause the Company to lose market share. Further, if the Company does not have sufficient resources to invest or is otherwise unable to correctly identify customer needs and preferences, innovate and drive improvements or efficiencies in existing products, develop new products, technologies or services in the markets the Company participates in, or successfully commercialize its innovation efforts, the Company may lose market share. Even when the Company successfully innovates and develops new and enhanced products and services, the Company often incurs substantial costs in doing so, and the Company's profitability may suffer.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">If the subcontractors the Company relies upon do not perform their contractual obligations, the Company's revenues and cash flows would be adversely affected. </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of the Company's construction contracts with customers involve subcontracts with other companies that perform a portion of the services or provide systems that are integral to the end product that the Company provides to its customers. The Company depends on the quality and timeliness of work performed by its subcontractors.  There is a risk the subcontractors may not perform their contractual obligations, which may subject the Company to customer concerns or disputes. Any such disputes or concerns could materially and adversely impact the Company's ability to perform the Company's obligations as the prime contractor.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company's operations are subject to seasonal fluctuations and the cyclical nature of construction activity that may impact the Company's cash flow.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's net sales are generally lowest in the first quarter primarily as a result of reduced activity in the building industry due to inclement weather. Therefore, the Company's cash flow from operations may vary from quarter to quarter. Furthermore, construction activity has historically been cyclical and dependent on economic conditions, including interest rates, availability of financing, inflation, employment, spending habits, consumer confidence and other factors outside the Company's control. Residential and commercial construction is also affected by the cost and availability of skilled labor, which could impact both the cost and pace of construction activity, as well as the construction methods used, all of which could adversely affect demand for the Company's products. If the Company's cash flows were significantly reduced due to seasonal fluctuations or reduced construction activity, the Company may not be able to service its indebtedness or maintain covenant compliance.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company's ongoing and expected restructuring plans and other cost savings initiatives may not be as effective as the Company anticipates, and the Company may fail to realize the cost savings and increased efficiencies that the Company expects to result from these actions, which could negatively affect the Company's operating results.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company continually seeks ways to simplify or improve processes, eliminate excess capacity and reduce costs in all areas of its operations, which from time to time includes restructuring and integration activities. The Company has implemented significant restructuring activities across its manufacturing, sales and distribution footprint, which include workforce reductions and facility consolidations. Costs of future initiatives may be material and the savings associated with them are subject to a variety of risks, including the Company's inability to effectively eliminate duplicative back-office overhead and overlapping sales personnel, rationalize manufacturing capacity, synchronize information technology systems, consolidate warehousing and distribution facilities and shift production to more economical facilities. As a result, the contemplated costs to effect these initiatives may materially exceed estimates. The initiatives the Company is contemplating may require consultation with various employees and consultants which may influence the timing, costs and extent of expected savings and may result in the loss of skilled employees in connection with the initiatives.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If the Company is unable to implement its cost savings initiatives as timely and/or effectively as planned, the Company's business may be adversely affected by the impact of the Company's ability to continue to meet customer demand, maintain a high level of quality throughout the execution of the plans, and achieve the expected financial benefits of such plans, and therefore, potentially resulting in a material adverse effect on the Company's business, results of operations and financial condition.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Economic, political, and other risks associated with foreign operations could adversely affect the Company's financial results and cash flows.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Although the significant majority of the Company's business activity takes place in the United States, the Company derives a portion of its revenues and earnings from operations in Canada, China and Japan, and are subject to risks associated with doing business internationally. The Company's sales originating outside the United States represented approximately 4% of the Company's consolidated net sales during the year ended December 31, 2022. The Company believes that its business activities outside of the United States involve a higher degree of risk than the Company's domestic activities, such as the possibility of unfavorable circumstances arising from host country laws or regulations, changes in tariff and trade barriers and import or export licensing requirements and exposes the Company to currency exchange rate fluctuations between the United States Dollar and foreign currencies. In addition, any local or global health issue or uncertain political climates, international hostilities, natural disasters, or any terrorist activities could adversely affect customer demand, the Company's operations and the Company's ability to source and deliver products and services to the Company's customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Climate change and climate change legislation or regulations may adversely affect the Company's business.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Legislative and regulatory changes in response to the potential effects of climate change may require additional costs and investment for compliance, including an increase in the Company's capital expenditures to reduce the Company's greenhouse gas emissions and increased cost of purchased energy for both the Company and its suppliers, which may increase the Company's costs to procure raw materials, components or equipment parts. As climate change continues to increase the severity of weather, physical effects&#8212;such as damage to facilities, capital equipment and inventory or disruption in production, product distribution or field operations as a result of heat, drought, wildfires, major storm events and shifts in regional weather patterns and intensities&#8212;may also significantly affect the Company's operations and financial results. Concerns over global climate change and environmental sustainability over time, including due to expectations of the Company's stockholders, customers and employees, may influence the Company's strategic direction, supply chain, or delivery channels.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Future terror attacks, war, natural disasters or other catastrophic events beyond the Company's control could negatively impact the Company's operations and financial results.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Terror attacks, war, or other civil disturbances, natural or man-made disasters (which may become more frequent due to climate change), other catastrophic events or public health crises could cause catastrophic loss or other material damage to the Company's facilities or lead to economic instability, decreased capacity to produce the Company's products and decreased demand for the Company's products. The Company has experienced operating disruptions related to severe weather across the U.S. From time to time, terrorist attacks worldwide have caused instability in global financial markets. The Company does not conduct business in nor source directly from either </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">16</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Russia or Ukraine yet continues to monitor the current military conflict between these countries for any potential disruptions. The Company could incur uninsured losses and liabilities arising from such events, and any resulting business interruptions could have an adverse effect on the Company's operations, cash flows and financial results. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Risks Related to Information Technology</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company's business and financial performance may be adversely affected by cybersecurity attacks, information systems interruptions, equipment failures, and technology integration. </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company relies on information technology ("IT") systems, some of which are provided and/or managed by third-parties, to process, transmit and store electronic information (including sensitive data such as confidential business information and personally identifiable data relating to the Company's employees, customers and other business partners), and to manage or support a variety of critical business processes and activities (such as receiving and fulfilling orders, billing, collecting and making payments, shipping products, providing services and support to customers, and fulfilling contractual obligations). The Company's ability to effectively manage its business depends on the security, reliability, and capacity of these IT systems. These systems (including those the Company acquires through business acquisitions) can be damaged, disrupted or shut down due to attacks by computer hackers, computer viruses, ransomware, human error or malfeasance, power outages, hardware failures, telecommunication or utility failures, catastrophes, or other unforeseen events.  While, the Company maintains IT measures designed to protect the Company against intellectual property theft, data breaches, sabotage and other external or internal cyber-attacks or misappropriation, cyber-attacks are increasingly difficult to identify and prevent, and it is possible that potential vulnerabilities could go undetected for an extended period. The Company's systems are not fully redundant and the Company's disaster recovery planning may not be sufficient.  Any interruptions to the Company's IT systems could disrupt the Company's operations, causing delays or cancellation of customer orders or impeding the manufacture or shipment of products, processing of transactions or reporting of financial results. Security breaches can result in the misappropriation, destruction or unauthorized disclosure of confidential information or personal data belonging to the Company or to the Company's employees, partners, customers, or suppliers, damage customer, business partner and employee relationships and the Company's reputation and result in legal claims and proceedings, liability and penalties under data protection laws and regulations. Some of the Company's IT systems have experienced past security breaches, and, although they did not have a material adverse effect on the Company's operating results, there can be no assurance that future incidents will not have material adverse effects on the Company's operations or financial results.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, the Company's IT systems require an ongoing commitment of significant resources to maintain and enhance existing systems and develop new systems to keep pace with continuing changes in information processing technology, evolving legal and regulatory standards and customer expectations, changes in the techniques used to obtain unauthorized access to data and information systems, and the IT needs associated with the Company's changing products and services. In addition, the Company is subject to data privacy and security laws, regulations, and customer-imposed controls in a number of jurisdictions as a result of having access to and processing confidential, personal and/or sensitive data in the course of the Company's business. Compliance with the varying data privacy regulations across the United States and around the world has required, and will continue to require, significant expenditures. There can be no assurance that the Company will be able to successfully maintain, enhance and upgrade the Company's IT systems as necessary to effectively address changing cybersecurity risks and legal requirements, and the Company's efforts to do so may be costly.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Risks Related to Acquisitions</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company's strategy depends, in part, on identification, management and successful business and system integration of future acquisitions.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Historically, the Company has grown through a combination of internal growth plus external expansion through acquisitions. The Company intends to continue to seek additional acquisition opportunities in accordance with the Company's business strategy. However, the Company cannot provide any assurance that the following risks involved in completing acquisitions will not occur nor adversely impact the Company's operations and financial results:  </span></div><div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Failure to identify appropriate acquisition candidates, or, if the Company does, failure to successfully negotiate the terms of an acquisition;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Diversion of senior management&#8217;s attention from existing business activities;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Failure to integrate any acquisition into the Company's operations successfully; </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">17</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Unforeseen obligations, loss of key customers, suppliers, and employees of the acquired businesses, or loss of existing customers and suppliers; </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Difficulties or delays in integrating and assimilating information and systems that may require significant unforeseen upgrades or replacement of the Company's primary IT systems across significant parts of the Company's businesses and operations, which could lead to interruptions of information flow internally and to the Company's customers and suppliers;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The need to raise additional funds through additional equity or debt financing, which could be dilutive to stockholder value, increase the Company's interest expense and reduce the Company's cash flows and available funds; and </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Adverse impact on overall profitability if the acquired business does not achieve the return on investment projected at the time of acquisition.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Risks Related to Financing and Accounting Matters</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company applies judgments and makes estimates in accounting for certain customer contracts, and changes in these judgments or estimates may have significant impacts on the Company's earnings.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in judgments or required estimates and any subsequent adjustments to those judgments or estimates (such as performance incentives, penalties, contract claims and contract modifications) could have a material effect on the Company's sales and profits. Due to the substantial judgments applied and estimations involved with the Company's accounting for customer contracts, the Company's actual results could differ materially or could be settled unfavorably from the Company's estimates. Revenue representing 40%, 47% and 40% of 2022, 2021 and 2020 of the Company's consolidated net sales, respectively, were recognized over time under the cost-to-cost method. Refer to &#8220;Critical Accounting Estimates&#8221; within Item&#160;7 of this Annual Report on Form 10-K for more detail of how the Company's financial statements can be affected by accounting for revenue from contracts with customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">If events occur or indicators of impairment are present that may cause the carrying value of long-lived and indefinite-lived assets to no longer be recoverable or to exceed the fair value of the asset, or that may lead to a reduction in the fair value of the asset, significant non-cash impairment charges to earnings may be taken that may have a material adverse impact on the Company's results of operations.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has previously recorded significant non-cash impairment charges for goodwill and other intangible assets as a result of reductions in the estimated fair values of certain businesses.  It is possible that the Company will be required to record additional non-cash impairment charges to the Company's earnings in the future, which could be significant and have a material adverse impact on the Company's results of operations.  Refer to &#8220;Critical Accounting Estimates&#8221; within Item&#160;7 of this Annual Report on Form 10-K for more detail of how the Company's financial statements can be affected by asset impairment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Increases in future levels of leverage and size of debt service obligations could adversely affect the Company's ability to raise additional capital to fund the Company's operations, limit the Company's ability to react to changes in the economy or the Company's industries and prevent the Company from meeting the Company's obligations.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, the Company had $91.0 million of outstanding indebtedness. The Company's ability to make scheduled payments on, or refinance, its debt obligations depend on the Company's financial condition and operating performance, which are subject to prevailing economic, industry and competitive conditions and to certain financial, business, legislative, regulatory and other factors beyond the Company's control.  The Company may need to incur additional debt in the future to fund strategic acquisitions, investments or for other purposes, which debt could have significant adverse consequences to the Company's business.  Any sustained weakness in general economic conditions and/or U.S. or global capital markets could adversely affect the Company&#8217;s ability to raise capital on favorable terms or at all.  The Company&#8217;s access to funds under its credit facility is dependent on the ability of the financial institutions that are parties to that facility to meet their funding commitments. Those financial institutions may not be able to meet their funding commitments if they experience shortages of capital and liquidity or if they experience excessive volumes of borrowing requests within a short period of time. Longer term volatility and continued disruptions in the capital and credit markets as a result of uncertainty, changing or increased regulation of financial institutions, reduced alternatives or failures of significant financial institutions could adversely affect the Company&#8217;s access to the liquidity needed for its businesses in the longer term. Such disruptions could require the Company to take measures to conserve cash until the markets stabilize or until alternative credit arrangements or other funding for its business needs can be arranged. The Company's Credit Agreement entered into on December 8, 2022, contains several financial and other restrictive covenants.  A significant decline in the </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Company's operating income or use of the Company's Credit Agreement (or other additional indebtedness) for acquisitions, operations and capital expenditures could cause the Company to violate these covenants which could result in the Company incurring additional financing fees that would be costly and adversely affect the Company's profitability and cash flows.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Risks Related to Legal and Regulatory Matters</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">A portion of the Company's business is dependent on laws and regulations pertaining to the cannabis industry, and this industry faces significant opposition that could adversely affect this portion of the Company's business.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">One of the Company's businesses makes and sells greenhouses which may be sold to companies that cultivate, process and sell cannabis products for recreational and medicinal use. This business is dependent on state laws and regulations pertaining to the cannabis industry that legalize and regulate cannabis use. While several states have legalized cannabis for medical or recreational purposes, it remains illegal under federal law. Even in those states in which cannabis use has been legalized, its use remains a violation of federal criminal law, which preempts state laws that legalize its use. Strict enforcement of federal law regarding cannabis would likely have an adverse impact on the Company's customers, and correspondingly, may adversely impact the Company's gross profit, net income and cash flows.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The cultivation, processing and distribution of cannabis in states where it has been legalized is subject to significant regulatory requirements. If the Company's customers who purchase greenhouses are unable to obtain and maintain the licenses, permits, authorizations or accreditations required to comply with state and local regulations, the Company may experience adverse effects on the Company's business and results of operations.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's business that engages in the sale of greenhouses is dependent, in part, on increasing legalization and market acceptance of medical and recreational cannabis use. The Company cannot predict the future increase in state legalization or the future market potential of legalized cannabis use. Other well-established business sectors with powerful economic influence may take action that could adversely impact the cannabis market. The failure of further legalization or market acceptance, or the adverse action by competing well-established business sectors, may suppress the Company's customers&#8217; demand for the Company's products and thereby reduce the Company's gross profit and net income.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Imposed tariffs and potential future tariffs may result in increased costs and could adversely affect the Company's results of operations.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tariffs imposed in the United States on certain steel and aluminum products imported into the U.S. have created volatility in the market and have increased the costs of these inputs. Increased costs for imported steel and aluminum products have led domestic sellers to respond with market-based increases to prices for such inputs as well. These tariffs, along with any additional tariffs or trade restrictions that may be implemented by the U.S. or other countries, could result in further increased costs, shifting in competitive positions and a decreased available supply of steel, resins and aluminum as well as additional imported components and inputs.&#160;The Company may not be able to pass price increases on to its customers and may not be able to secure adequate alternative sources of steel, resins and aluminum on a timely basis. While retaliatory tariffs imposed by other countries on U.S. goods have not yet had a significant impact, the Company cannot predict further developments.&#160;The tariffs could adversely affect the Company's income from operations for some of the Company's businesses and customer demand for some of the Company's products which could have a material adverse effect on the Company's results of operations, financial position and cash flows.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The expiration, elimination or reduction of solar rebates, credits and incentives may adversely impact the Company's business.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A variety of federal, state and local government agencies provide incentives to promote electricity generation from renewable sources such as solar power. These incentives are in the form of rebates, tax credits and other financial incentives which help to motivate end users, distributors, system integrators and others to install solar powered generating systems. Any changes to reduce, shorten or eliminate the scope and availability of these incentive programs could materially and adversely impact the demand for the Company's related products, and the Company's financial condition and results of operations.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The timing and progress of many of the Company's renewable energy customers&#8217; projects are impacted by incentives provided by the Federal solar tax credit also known as Investment Tax Credit ("ITC"). The recent Inflation </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Reduction Act ("IRA") signed into law on August 16, 2022, provides a 30% ITC for projects started prior to the guidance issued by the Department of the Treasury and published in the Federal Register on November 30, 2022.   Sixty days after the issuance of such guidance, January 29, 2023,  the base ITC will be reduced to 6%. In order for the Company's customers to attain an additional 24% for a total credit of 30%, new labor requirements for the new wage and apprenticeship standards must be met.  Demand for the Company's products could be adversely impacted if the Company does not meet the above standards in order to enable its customer to obtain the full 30% credit.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The nature of the Company's business exposes the Company to product liability, product warranty and other claims, and other legal proceedings.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is involved in product liability, product warranty and other claims relating to the products the Company manufactured and distributed. Although the Company currently maintains what the Company believes to be suitable and adequate insurance in excess of the Company's self-insured amounts for product liability and other claims, there can be no assurance that the Company will be able to maintain such insurance on acceptable terms or that such insurance will provide adequate protection against potential liabilities. Product liability claims can be expensive to defend and can divert the attention of the Company's management and other personnel for significant periods, regardless of the ultimate outcome. Claims of this nature could also have a negative impact on customer confidence in the Company's products, the Company's brands and the Company. In the ordinary course of business, the Company is also subject to other types of legal and regulatory proceedings. Any claims raised in legal and regulatory proceedings, whether with or without merit, could be time consuming and expensive to defend and could divert the Company's management attention and resources. The Company cannot assure you that any current or future claims will not adversely affect the Company's reputation, financial condition, operating results, and cash flows.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company could incur substantial costs in order to comply with, or to address any changes in or violations of, environmental, health, safety and other laws.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's operations and facilities are subject to a variety of stringent federal, state, local, and foreign laws and regulations, including those relating to the protection of the environment and human health and safety. Compliance with these laws and regulations sometimes involves substantial operating costs and capital expenditures, and failure to maintain or achieve compliance with these laws and regulations or with the permits required for the Company's operations could result in substantial costs and liabilities, such as fines and civil or criminal sanctions, third-party claims for property damage or personal injury, cleanup costs or temporary or permanent discontinuance of operations, including claims arising from the businesses and facilities that the Company has sold. The Company is subject to the risk that the Company, its employees, its affiliated entities, contractors, agents or their respective officers, directors, employees and agents may take actions determined to be in violation of any of these laws, for which the Company might be held responsible, particularly as the Company expands its operations geographically through organic growth and acquisitions. The Company cannot provide assurance that the Company's internal controls and compliance systems, including the Company's Code of Ethics and Statement of Policy, will protect the Company from acts committed by the Company's employees, agents or business partners that violate U.S. and/or non-U.S. laws, including the laws governing payments to government officials, bribery, fraud, kickbacks and false claims, pricing, sales and marketing practices, conflicts of interest, competition, employment practices, workplace behavior, export and import compliance, economic and trade sanctions, money laundering and data privacy. An actual or alleged violation could result in substantial fines, sanctions, civil or criminal penalties, debarment from government contracts, curtailment of operations in certain jurisdictions, competitive or reputational harm, litigation or regulatory action and other consequences that might adversely affect the Company's results of operations, financial condition or strategic objectives. For certain businesses the Company has divested, the Company has provided limited indemnifications for environmental contamination to the successor owners. The Company has also acquired and expects to continue to acquire businesses and facilities to add to the Company's operations. While the Company sometimes receives indemnification for pre-existing environmental contamination, the party providing the indemnification may not have sufficient resources to cover the cost of any required measures. Certain facilities of the Company have been in operation for many years and the Company may be liable for remediation of any contamination at the Company's current or former facilities; or at off-site locations where waste has been sent for disposal, regardless of fault or whether the Company, its predecessors or others are responsible for such contamination. The Company has been responsible for remediation of contamination at some of the Company's locations, and while such costs have not been material to date, the cost of remediation of any of these and any newly-discovered contamination cannot be quantified, and the Company cannot assure you that it will not materially affect the Company's profits or cash flows. Changes in laws, regulations or enforcement policies, including without limitation new or additional regulations </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">affecting disposal of hazardous substances and waste, greenhouse gas emissions or use of fossil fuels, could have a material adverse effect on the Company's business, financial condition, or results of operations.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The Company is subject to certain additional regulations as a United States government contractor or subcontractor. </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of the Company's revenue is derived from contracts with agencies of the United States government and subcontracts with its prime contractors. As a United States government contractor or subcontractor, the Company is subject to federal contracting regulations, including the Federal Acquisition Regulations, which govern the allowability of costs incurred by the Company in the performance of United States government contracts. In connection with the Company's United States government business, the Company is also subject to government audits and to review and approval of the Company's policies, procedures, and internal controls for compliance with procurement regulations and applicable laws. In certain circumstances, if the Company does not comply with the terms of a government contract or with regulations or statutes, the Company could be subject to downward contract price adjustments or refund obligations or could in extreme circumstances be assessed civil and criminal penalties or be debarred or suspended from obtaining future contracts for a specified period of time.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_22"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;1B.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Unresolved Staff Comments</span></td></tr></table></div><div style="margin-top:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div><span><br/></span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_25"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;2.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Properties</span></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases its principal executive office and corporate headquarters in Buffalo, New York. The number, type, location and classification of the properties used by the Company's operations by segment and corporate as of December&#160;31, 2022, are as follows:</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:44.274%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.822%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.822%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.822%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.824%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Number and Type of Properties</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Plant</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Distribution<br/>Center</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Office</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential Products</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:44.274%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.822%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.822%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.822%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.824%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Location of Properties</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Classification of Properties</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Domestic</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Foreign</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Owned</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Leased</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential Products</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company believes that its properties are effectively utilized, well maintained, in good condition, and will be able to accommodate the Company's capacity needs to meet current levels of demand. In addition, the Company believes that its properties are located to optimize customer service, market requirements, distribution capability and freight costs.</span></div><div style="margin-top:12pt;text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">21</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_28"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:18pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;3.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Legal Proceedings</span></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">From time to time the Company has been and may in the future become involved in litigation, as well as other legal proceedings in the ordinary course of the Company's business. The Company maintains liability insurance against risks arising out of the normal course of business.  While the outcome of these legal proceedings cannot be predicted with certainty, the Company's management, based on currently available facts, does not believe that the ultimate outcome of any pending litigation will have a material effect on the Company's consolidated financial condition, results of operations, or liquidity. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no material legal proceedings terminated, settled, or otherwise resolved during the fourth quarter of the year ended December 31, 2022. </span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_31"></div><div style="margin-top:18pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;4.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Mine Safety Disclosures</span></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_34"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-bottom:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">PART II</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_37"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;5.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Market for Registrant's Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</span></td></tr></table></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s common stock is traded on the NASDAQ Global Select Market (&#8220;NASDAQ&#8221;) under the symbol &#8220;ROCK.&#8221;</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of February 21, 2023, there were approximately 32 shareholders of record of the Company&#8217;s common stock. However, the Company believes that it has a significantly higher number of beneficial owners because of the number of shares that are held by banks, brokers, and other financial institutions.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company did not declare any cash dividends during the years ended December&#160;31, 2022 and 2021 and does not expect to pay any in the foreseeable future. The Company intends to use cash generated by operations to reinvest in the businesses, fund acquisitions and to repurchase stock. The Company's disclosure in Note 9 of the Company&#8217;s audited consolidated financial statements included in Item&#160;8 of this Annual Report on Form 10-K provide additional information regarding restrictions on potential capital distributions.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In May 2022, the Company's Board of Directors authorized a share repurchase program of up to $200 million of the Company's issued and outstanding common stock. The program was publicly announced on May 4, 2022 and has a duration of three years, ending May 2, 2025. Repurchases may be made, from time to time, in amounts and at prices the Company deems appropriate, subject to market conditions, applicable legal requirements, debt covenants and other considerations. Any such repurchases may be executed using open market purchases, privately negotiated agreements or other transactions. The repurchase program may be suspended or discontinued at any time at the Company's discretion.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth purchases made by or on behalf of the Company during the quarter ended December 31, 2022.</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:22.291%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.467%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.467%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.467%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.472%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Issuer Purchases of Equity Securities</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Period</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Total Number<br/>of Shares<br/>Purchased</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Average Price<br/>Paid per Share</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Total Number<br/>of Shares<br/>Purchased as Part<br/>of Publicly <br/>Announced<br/>Program</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Approximate<br/>Dollar Value of<br/>Shares that May<br/>Yet Be Purchased<br/>Under the<br/>Program</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 1 - 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">537,756&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45.48&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">537,756&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">120,001,218&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">November 1 - 30, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">120,001,218&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 1 - 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,157&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46.58&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,157&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,124,306&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">663,913&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45.69&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">663,913&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company did not sell unregistered equity securities during the period covered by this report.</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_40"></div><div style="margin-top:18pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;6.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">[Reserved]</span></td></tr></table></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_43"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;7.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations should be read in conjunction with the Company&#8217;s risk factors and its consolidated financial statements and notes thereto included in Item&#160;1A and Item&#160;8, respectively, of this Annual Report on Form 10-K. Certain information set forth in this Item&#160;7 constitutes &#8220;forward-looking statements&#8221; as that term is used in the Private Securities Litigation Reform Act of 1995. Such forward-looking statements are based, in whole or in part, on management&#8217;s beliefs, estimates, assumptions, and currently available information. For a more detailed discussion of what constitutes a forward-looking statement and of some of the factors that could cause actual results to differ materially from such forward-looking statements, please refer to the &#8220;Safe Harbor Statement&#8221; on </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_10">page 3</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of this Annual Report on Form 10-K.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">23</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_46"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Company Overview</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is a leading manufacturer and provider of products and services for the renewable energy, residential, agtech, and infrastructure markets.  The Company serves customers primarily in North America including renewable energy (solar) developers, institutional and commercial growers of food and plants, home improvement retailers, wholesalers, distributors, and contractors. The Company's operational infrastructure provides the necessary scale to support local, regional, and national customers in each of its markets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company operates and reports its results in the following four reporting segments:</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Renewables</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Residential </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Agtech</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Infrastructure</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Demand for products and services in the segments and end markets the Company's businesses serve are subject to economic conditions that are influenced by various factors. These factors include but are not limited to changes in general economic conditions, interest rates, exchange rates, commodity costs, expiration of solar rebates, supply limitations that impact the availability of solar panels and therefore solar racking installations, demand for residential construction, demand for repair and remodeling, governmental policies and funding, tax policies and incentives, tariffs, trade policies, weather patterns, the level of non-residential construction and infrastructure projects, the need for protection of high value assets, demand for renewable energy sources, and climate change. The Company believes the key elements of its strategy outlined in Item 1. Business of this Annual Report on Form 10-K will allow the Company to respond timely to these factors.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Recent Trends</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The broader market dynamics over the past two years, which has included the residual impact of COVID-19, have resulted in impacts to the Company, including material cost inflation, labor availability issues and logistics costs increases. The Company has also been impacted from supply constraints for materials and commodities used in its operations and from solar panels shortages used by the Company's customers in conjunction with the goods and services the Company provides. In certain instances these constraints have resulted in project delays, cost inflation and logistical delays. The Company continues to work with its customers and suppliers in this dynamic environment to better align pricing, understand the existing and potential future impacts to the supply chain, and make efforts to mitigate such impacts. While certain of these pressures have subsided over the latter part of 2022, the Company expects that some of these dynamics will continue into 2023 and could continue to have an impact on demand, material costs, labor and logistics.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In early 2022, the U.S. Department of Commerce ("USDOC") was petitioned to investigate alleged circumvention of anti-dumping and countervailing duties on Chinese imports of solar panels produced in other countries in Southeast Asia. In March 2022, the USDOC announced that it would investigate the circumvention alleged in the petition. In June 2022, the President of the United States issued an Executive Order to suspend any tariffs that result from this investigation for two years. In December 2022, the USDOC issued a preliminary report that identified occurrences of the alleged circumvention against specific solar panel manufacturers, but also cleared other manufacturers. No retroactive tariffs or penalties are expected against the former group. The original complainant is expected to appeal these USDOC findings and decisions, including pursuit of a temporary restraining order.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2022, the Uyghur Forced Labor Prevention Act ("UFLPA") was enacted. The UFLPA requires traceability of components of imported goods to validate that the components are not sourced from areas in the Xinjiang region of China. There are reports that solar panels continue to be held at U.S. customs until the importer is able to prove where they have been sourced. It is the Company's understanding that these panels are starting to be released by U.S. customs, however, progress is slow and a significant backlog of  panels continue to await review and release..</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As the timing and progress of many of the Company's customers&#8217; projects depend upon the supply of solar panels, the Company's operating results have been and could be further impacted by these actions. The Company continues to work with customers who are assessing their ability to source panels needed to complete projects.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 16, 2022, the Inflation Reduction Act ("IRA") was signed into law. Among other things, the IRA provides for Investment Tax Credits ("ITC") for renewable energy. The IRA provides a 30% ITC for projects started prior to the guidance issued by the Department of the Treasury and published in the Federal Register on November 30, 2022,  </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">regarding new wage and apprenticeship standards. Sixty days after the issuance of such guidance, January 29, 2023,  the base ITC will be 6%, with an additional 24% available if the new labor standards are met or the project is less than one megawatt. The IRA also provides the option to earn an additional 10% credit for domestic content, and separately, an additional 10% credit for siting a project in an &#8220;energy community.&#8221; Lastly, there are Manufacturers Tax Credits available to suppliers of certain, specific solar tracker components, including mechanical parts and battery storage, that are made in the U.S. The Company expects the ITC to accrue to its downstream customers, solar investors, and expect Manufacturers Tax Credits to accrue to the Company's upstream suppliers. The Company anticipates that these tax credits will provide stability for the industry and should reduce policy driven demand swings for the Company's products. As provided for in the issued guidance relative to prevailing wage and sourcing provisions, the Company intends to work with its customers to maximize the tax credits available to them.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company enters 2023 with solid operating momentum and a plan to deliver full year growth, margin expansion, and strong cash performance for the year, as it anticipates 2023 will continue to be a fluid external environment as the Residential market is expected to return to normal demand seasonality, panel supply for the solar industry is expected to improve in the second half of the year, and Agtech projects for produce growing are expected to be finalized. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Operating Performance Measures </span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company uses certain operating performance measures, specifically consolidated gross margin, operating margin by segment and consolidated operating margin, to manage its businesses, set operational goals, and establish performance targets for incentive compensation for its employees. The Company defines consolidated gross margin as a percentage of total consolidated gross profit to total consolidated net sales.  The Company defines operating margin by segment as a percentage of total income from operations by segment to total net sales by segment and consolidated operating margin as a percentage of total consolidated income from operations to total consolidated net sales. The Company believes gross margin and operating margin may be useful to investors in evaluating the profitability of its segments and the Company on a consolidated basis.</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_49"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Results of Operations</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Year Ended December&#160;31, 2022 Compared to Year Ended December&#160;31, 2021 </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For a discussion of the Company's results of operations for the year ended December 31, 2021 and for a comparison of such results of operations for the year ended December 31, 2020 results please refer to "Management's Discussion and Analysis of Financial Condition and Results of Operations" in the Company's Annual Report on Form 10-K for the year ended December 31, 2021 that was filed with the SEC on February 23, 2022. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth selected results of operations data (in thousands) and its percentages of net sales for the years ended December&#160;31:</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:45.752%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.641%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,389,966&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339,783&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,071,272&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,049,772&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">318,694&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22.9&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">290,011&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.6&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188,592&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">184,723&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible asset impairment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,300&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from operations</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130,102&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.4&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,988&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.2&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,047&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,639&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expense (income)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,565&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,213)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before taxes</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,490&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99,562&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.4&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,084&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,046&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,406&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.9&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,516&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.6&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from discontinued operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,113&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,406&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.9&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,629&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.6&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">25</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company&#8217;s net sales by reportable segment for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"><tr><td style="width:1.0%"></td><td style="width:20.876%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.109%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.537%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.832%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.436%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.537%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.731%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.537%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.846%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.979%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.624%"></td><td style="width:0.1%"></td></tr><tr><td colspan="18" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Impact of</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total<br/>Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Acquisitions</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Portfolio Management</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Ongoing Operations</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">377,567&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">432,096&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(54,529)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(54,529)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">767,248&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">635,505&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131,743&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,449&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,294&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,868&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,161&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,293)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,488)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(17,805)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,283&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,021&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,262&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,262&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,389,966&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339,783&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,183&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,449&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,488)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,222&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated net sales increased from 2021 by $50.2 million, or 3.7%, to $1.4 billion for 2022 compared to 2021. The 3.7%  increase in revenue was driven by a 2.7% or $36.2 million increase from organic revenue, the result of an 11% increase in pricing to customers partially offset by a net volume decline of 10%, and a 2.0% or $26.4 million increase generated from the current year acquisition of QAP in the Residential segment. Partially offsetting these increases was a decline of 0.9% or $12.5 million from the Company's processing business which was reclassified as held-for-sale as of March 31, 2022; the results of which will continue to be reported in the Company's consolidated operating results from continuing operations until the sale of the business is completed. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The organic revenue growth in the Residential segment, largely driven by price management and participation gains, and the Infrastructure segment revenue growth more than offset volume declines in both the Renewables and Agtech segments, which were primarily impacted by project delays. Consolidated backlog decreased 12% to $301 million down from $344 million at the end of the prior year.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales in the Renewables segment decreased 12.6%, or $54.5 million, to $377.6 million in 2022 compared to $432.1 million in 2021.  Revenue decreased by 12.6% from the prior year as the market demand for solar panel installation continues to be impacted by the UFLPA, which was implemented in June 2022, along with the impact of the Department of Commerce's preliminary ruling on its solar panel AD/CVD anti-circumvention investigation, which has impacted scheduling of projects. As a result, backlog decreased 17% from the prior year for this segment, however, given the current conversations with the Company's customers and expected continued progress on the part of panel importers, the Company expects backlog to improve once there is better understanding of documentary compliance requirements relative to the UFLPA.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales in the Residential segment increased 20.7%, or $131.7 million, to $767.2 million in 2022 compared to $635.5 million in 2021.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> T</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">he increase from the prior year was the result of continued pricing actions to better align price to inputs costs resulting from inflation, along with participation gains and strong market demand.  Sales generated by QAP, acquired in the third quarter of 2022, also contributed $26.4 million to the increase in the current year.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales in the Agtech segment decreased 15.2%, or $30.3 million, to $168.9 million in 2022 compared to $199.2 million in 2021.  Excluding the impact of the processing equipment business which has been classified as held-for-sale as of March 31, 2022, revenue declined $17.8 million due to project delays in the Company's produce and cannabis businesses, the result of continued rescheduling and re-scoping of projects.  Partially offsetting the decrease was growth in the Company's commercial greenhouse business. While quote activity remains robust, order backlog was also impacted by continued rescheduling and re-scoping of projects and decreased 13% year over year.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales in the Infrastructure segment increased 4.5%, or $3.3 million, to $76.3 million in 2022 compared to $73.0 million in 2021.  The increase in revenue was driven by growth in demand for fabricated products. Strong bidding activity resulted in a 23% increase in backlog from the prior year.  Management expects continued positive impact from the increased infrastructure spending related to the Infrastructure Investment and Jobs Acts in 2023.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's consolidated gross margin increased to 22.9% for 2022 compared to 21.6% for 2021.  This increase was primarily the result of favorable price/cost management along with favorable product and service revenue mix, along with improved operating execution from 80/20 and lean enterprise initiatives and participation </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">gains in the Residential segment.  These actions more than offset the impacts of supply chain challenges and severe weather which the Company experienced in the early part of 2022, that resulted in increased costs due to disruptions in project timing in the Renewables and Agtech segments.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Selling, general, and administrative ("SG&amp;A") expenses increased by $3.9 million, or 2.1%, to $188.6 million for 2022 from $184.7 million for 2021. The $3.9 million increase was primarily due to incremental SG&amp;A expenses recorded for the recent acquisition of QAP along with higher expenses associated with investments in the Company's organization to drive performance, including investing in the Company's ERP systems to simplify and digitize its businesses.  This increase was partially offset by lower performance-based compensation expense for equity-based awards in the Company's deferred compensation plan that are valued based on its 200-day average stock price, as compared to the prior year. Despite the above increases, SG&amp;A expenses as a percentage of net sales decreased to 13.5% for 2022 compared to 13.8% for 2021.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2021, the Company recognized intangible asset impairment charges of $8.3 million.  The impairment was the result of a rebranding initiative in 2021 that resulted in the discontinuation of certain indefinite-lived trademarks in the Agtech segment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company&#8217;s income from operations and income from operations as a percentage of net sales by reportable segment for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:27.554%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.841%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.115%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.280%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:8.702%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Impact of</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total<br/>Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Portfolio Management</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Ongoing Operations</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from operations:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,243&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,158&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,085&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,085&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,458&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,821&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,637&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,637&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,914&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(931)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,845&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,070&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,225)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,003&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,911&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">92&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">92&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated Corporate Expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(33,516)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2.4)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(36,971)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2.8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,455&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,455&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated income from operations</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130,102&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.4&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,988&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.2&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,114&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,070&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,044&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Renewables segment generated an operating margin of 6.7% in 2022 compared to 4.7% in 2021. The increase in operating margin was the combined result of costs incurred in the prior year related to backlog amortization and integration costs from recent acquisitions not recurring in 2022. Improved project management along with favorable alignment of material costs to customer selling prices and field operations efficiencies beginning in May and sustained through to the end of 2022 also contributed to the increase.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Residential segment operating margin slightly decreased to 16.5% in 2022 from 16.7% in 2021.   The decrease in operating margin was the result of the expected lower margins generated by QAP as the Company continues to integrate them operationally, partially offset by the benefit of improved alignment of price actions and input costs, along with continued solid execution resulting from 80/20 productivity initiatives.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Agtech segment generated an operating margin of 1.7% in 2022 compared to (0.5)% in 2021.  Excluding the impact of both a prior year $8.3 million impairment charge for an indefinite lived trademark that was discontinued as a result of a rebranding initiative in 2021, and the impact of the Processing business which has been classified as held for sale as of March 31, 2022, operating margin for the current year was essentially flat as compared to the prior year. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Infrastructure segment operating margin decreased to 11.8% in 2022 compared to 12.2% in 2021.  The margin declined from the prior year due to the impact of plate steel inflation on fixed price contracts in the earlier part of the year largely offset by improving operating execution. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unallocated corporate expenses decreased $3.5 million, or 9.3%, for 2022 from $37.0 million for 2021 to $33.5 million for 2022.  The decrease in expense was largely the result of lower performance-based compensation </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">27</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">expense related to equity-based awards in the Company's deferred compensation plan that are valued based on its 200-day average stock price as compared to the prior year.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense increased $2.4 million to $4.0 million for 2022 from $1.6 million for 2021.  The increase in expense was primarily due to higher outstanding balances on the Company's revolving credit facility during the current year along with higher interest rates compared to the prior year.  The outstanding balances on the Company's revolving credit facility were $91.0 million and $23.8 million as of  December 31, 2022, and 2021, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recorded other expense of $14.6 million in 2022, compared to other income of $4.2 million in 2021.  In 2022, the Company recorded a $14.0 valuation allowance related to the write-down of the processing business to estimated fair market value, which has been classified as held-for-sale as of March 31, 2022.  In 2021, the Company recognized a $4.7 million gain on the sale of securities received from the sellers of Thermo Energy Systems, Inc. to settle indemnification claims recorded in the prior year.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized a provision for income taxes of $29.1 million, an effective tax rate of 26.1%, for 2022 compared with a provision for income taxes of $25.0 million, an effective tax rate of 25.2%, for 2021.  The effective tax rates for 2022 and 2021 exceeded the U.S. federal statutory rate of 21% due to state taxes and nondeductible permanent differences partially offset by an excess tax benefit on stock-based compensation.</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_52"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Liquidity and Capital Resources</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company's liquidity position as of: </span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:55.204%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.014%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.016%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,608&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,849&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Availability on revolving credit facility</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">304,505&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">369,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">322,113&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">382,154&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Sources of Liquidity</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's sources of liquidity are comprised of cash on hand and available borrowing capacity provided under the Company's Credit Agreement (the "Credit Agreement"), entered into on December 8, 2022. This Credit Agreement replaced and paid off all amounts owed under the Sixth Amended and Restated Credit Agreement dated as of January 24, 2019. The Credit Agreement maintains similar capacity as the prior agreement in which it provides for a revolving credit facility and letters of credit in an aggregate amount equal to $400 million. The Company can request additional financing to increase the revolving credit facility to $700 million or enter into a term loan of up to $300 million subject to conditions set forth in the Credit Agreement. The Company believes that these sources provide the Company with ample liquidity and capital resources to invest in operational excellence, growth initiatives and the development of the organization.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has been able to weather the economic impacts of the broader market dynamics, including the inflationary cost environment, while continuing to make investments that support the Company's strategy. The Company continues to remain focused on managing its working capital, closely monitoring customer credit and collection activities, and working to extend payment terms with its vendors. The Company believes its liquidity, together with the cash expected to be generated from operations, should be sufficient to fund working capital needs and growth initiatives for the foreseeable future.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company uses the Credit Agreement to provide liquidity and capital resources primarily for the Company's U.S. operations. Generally, the Company's foreign operations have generated cash flow from operations sufficient to invest in working capital and fund their capital improvements. As of December&#160;31, 2022 and  2021, the Company's foreign subsidiaries held $15.2 million and $11.3 million of cash, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Outstanding balances on the Company's revolving credit facility under the Company's Credit Agreement accrue interest at a rate, at the Company's option, equal to the applicable margin plus (a) a base rate, (b) a daily simple secured overnight financing rate ("SOFR"), (c) a term SOFR rate, or (d) for certain foreign currencies, a foreign currency rate. See Note 9 to the Company's consolidated financial statements in Part II, Item 8, Financial Statements, of this Annual Report on Form 10-K for further information on the Company&#8217;s Credit Agreement</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Uses of Cash / Cash Requirements</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's material short-term cash requirements primarily include accounts payable, certain employee and retiree benefit-related obligations, operating lease obligations, interest payments on outstanding debt, repayments of borrowing on its revolving credit facility, capital expenditures, and other purchase obligations originating in the normal course of business for inventory purchase orders and contractual service agreements. The Company's principal capital requirements are to fund its operations' working capital and capital improvements, as well as provide capital for acquisitions and to strategically allocate capital through repurchases of Company stock. The Company will continue to invest in growth opportunities as appropriate while focusing on working capital efficiency and profit improvement opportunities to minimize the cash invested to operate its business.  The Company intends to fund its cash requirements through cash generated from operations and, as necessary, from the availability on its revolving credit facility.  See Notes 8, 10, 12, 18 and 20 to the Company's consolidated financial statements in Part II, Item 8, Financial Statements, of this Annual Report on Form 10-K for further detail on the Company's accrued expenses, employee and retiree benefit-related obligations, operating lease obligations and historical capital expenditures</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In May 2022, the Company's Board of Directors authorized a share repurchase program of up to $200 million of the Company's issued and outstanding common stock. The program has a duration of three years, ending May 2, 2025. Repurchases may be made, from time to time, in amounts and at prices the Company deems appropriate, subject to market conditions, applicable legal requirements, debt covenants and other considerations. Any such repurchases may be executed using open market purchases, privately negotiated agreements or other transactions. The repurchase program may be suspended or discontinued at any time at the Company's discretion. As of December 31, 2022, the Company has repurchased 1,997,366 shares for an aggregate price of $85.9 million under this repurchase program.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2020, the Company opted to defer remittance of the employer portion of Social Security tax as provided in the Coronavirus, Aid, Relief and Economic Security Act ("CARES Act"), which allowed the Company to retain $4.4 million in cash during 2020 that would have otherwise been remitted to the federal government.  The deferred tax payments were required to be repaid in two installments occurring near the end of each year 2021 and 2022, of which $1.9 million was repaid in 2021 and the remaining $2.5 million was repaid in 2022.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Over the long-term, the Company expects that future investments, including strategic business opportunities such as acquisitions, may be financed through a number of sources, including internally available cash, availability under the Credit Agreement, new debt financing, the issuance of equity securities, or any combination of the aforementioned. The $52.1 million preliminary purchase price for the acquisition of QAP was financed primarily through borrowing on the Company's revolving credit facility.  Additional cash payments may be required for customary adjustments as provided for in the membership interest purchase agreement. All potential acquisitions are evaluated based on the Company's acquisition strategy, which includes the enhancement of the Company's existing products, operations, and/or capabilities, as well as expanding the Company's access to new products, markets, and customers, with the goal of creating compounding and sustainable stockholder value.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These expectations are forward-looking statements based upon currently available information and may change if conditions in the credit and equity markets deteriorate or other circumstances change. To the extent that operating cash flows are lower than current levels, or sources of financing are not available or not available at acceptable terms, the Company's future liquidity may be adversely affected.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cash Flows</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth selected cash flow data for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:72.692%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash provided by (used in):</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating activities of continuing operations</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">102,691&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,072&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investing activities of continuing operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(71,683)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,714&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing activities of continuing operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,007)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(66,612)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,178)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of exchange rate changes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,242)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(201)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net increase (decrease) in cash and cash equivalents</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,759&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(19,205)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">29</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Operating Activities</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by operating activities of continuing operations for 2022 of $102.7 million consisted of income from continuing operations of $82.4 million, non-cash net charges totaling $58.6 million, which include depreciation, amortization, stock compensation, held for sale valuation allowance, provision for deferred income taxes and other non-cash charges, offset by a net investment in working capital and other net assets of $38.3 million.  The net investment in working capital was largely the result of the timing and the settlement of payables in the current year related to inventory received in the prior year. Further, offsetting the impact of the decline in payables, the Company  also reduced its investment in inventory as supply chain challenges subsided in the current year and the Company was able to better align inventory levels with lower sales volumes. The decrease in accounts receivable as a result of lower sales volume in the fourth quarter of 2022 compared to the fourth quarter of 2021 also partially offset the investment in working capital.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by operating activities of continuing operations for 2021 of $25.1 million consisted of income from continuing operations of $74.5 million, non-cash net charges totaling $54.6 million, which include depreciation, amortization, intangible asset impairment, stock compensation, and other non-cash charges, offset by a net investment in working capital and other net assets of $104.0 million.  The investment in working capital and other net assets was largely due to increases in inventory and accounts payable due to higher inventory input costs, such as raw materials and freight, and provisioning for potential supply chain disruptions, along with increases in accounts receivable due to the timing of invoicing project-based customers, partially offset by a decrease in accrued expenses.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Investing Activities</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in investing activities of continuing operations for 2022 of $71.7 million consisted of net cash paid of $51.6 million for the acquisition of Quality Aluminum Products in the third quarter of 2022 and capital expenditures of $20.1 million.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by investing activities of continuing operations for 2021 of $24.7 million consisted of net proceeds of $38.1 million from the sale of the Company's Industrial business in the first quarter of 2021, $4.1 million from the receipt of a final working capital settlement from the prior year acquisition of TerraSmart, and proceeds of $0.2 million from the sale of property and equipment, offset by capital expenditures of $17.7 million.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financing Activities</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in financing activities for 2022 of $25.0 million consisted of $89.5 million of common stock repurchases, $2.0 million payment of debt issuance costs, offset by net proceeds from borrowings of $66.5 million.  Shares repurchases of 1,997,366 shares repurchased under the Company's authorized share repurchase program totaled $85.1 million with the balance repurchased of $4.4 million of common stock repurchases related to the net settlement of tax obligations for participants in the Company's equity incentive plans.  Net proceeds from borrowings consisted of $204.5 million in proceeds from borrowing on the Company's long-term credit facility, offset by $138.0 million in payments on long-term debt.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in financing activities for 2021 of $66.6 million consisted of $120.6 million in payments on long-term debt and $6.5 million of common stock repurchases related to the net settlement of tax obligations for participants in the Company's equity incentive plans, offset by $59.5 million in proceeds from borrowing on the Company's long-term credit facility and $1.0 million from the issuance of common stock from stock option exercises during the year.</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_55"></div><div style="margin-top:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Critical Accounting Estimates</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of the financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make decisions based upon estimates, assumptions, and factors it considers relevant to the circumstances. Such decisions include the selection of applicable principles and the use of judgment in their application, the results of which could differ from those anticipated.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of the Company&#8217;s significant accounting policies are described in Note 1 of the Company&#8217;s consolidated financial statements included in Part II, Item&#160;8, Financial Statements and Supplementary Data, of this Annual Report on Form 10-K.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">30</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our most critical accounting estimates that require the most difficult, subjective and complex judgments include:</span></div><div style="margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-31.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28pt">revenue recognition on contracts with customers; </span></div><div style="padding-left:45pt;text-align:justify;text-indent:-31.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28pt">the estimation of fair value for acquired assets and liabilities assumed in business combination transactions; and</span></div><div style="padding-left:45pt;text-align:justify;text-indent:-31.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28pt">the assessment of recoverability of goodwill and other indefinite-lived intangible assets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management reviews these estimates on a regular basis and makes adjustments based on historical experience, current conditions, and future expectations. Management believes these estimates are reasonable, but actual results could differ from these estimates.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue Recognition on Contracts with Customers</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The vast majority of the Company's sales contracts are for standard products with revenue recognized at the point in time the Company transfer control to the customer. The point in time the Company transfers control is based on when the Company determines the customer has legal title, significant risks and rewards of ownership of the asset, and the Company has a present right to payment for the product. However, revenue representing 40%, 47% and 40% of the Company's 2022, 2021 and 2020 consolidated net sales, respectively, was recognized over time under the cost-to-cost method as the Company satisfied its performance obligations. This method of revenue recognition pertains to activities within the Renewables, Agtech, and Infrastructure segments.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue recognized on contracts over time using the cost-to-cost method for measuring progress is recognized as work progresses toward completion based on the ratio of cumulative costs incurred to date to estimated total contract costs at completion.  Revenues are recognized proportionally as costs are incurred under this method. Estimates of the total costs at completion for the performance obligations involve subjective judgment and estimation to determine total costs expected to be incurred by the time the performance obligation has been completed and accepted by the customer.  The estimates of total costs to be incurred at completion of each contract are sensitive to significant judgments and assumptions, such as the expected costs to complete installation, which are affected by customer site-specific conditions as well as availability and cost of third-party contractors to complete the installation process. These estimates, judgments and assumptions impact the timing and amount of net sales and cost of sales recognized on in-progress performance obligations with customers. The Company continuously review its estimates and the progress and performance of the performance obligation for substantially all contracts that the Company recognizes revenue over time under the cost-to-cost method.  Any adjustments or changes in these estimates affecting sales, costs and profits are recognized in the period in which the change becomes known using the cumulative catch-up method of accounting, resulting in the cumulative effect of changes reflected in the period. A significant change in an estimate on one or more contracts could have a material effect on the Company's results of operations.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract costs include all direct costs related to contract performance. Selling and administrative expenses are charged to operations as incurred. Provisions for estimated losses on uncompleted contracts are made in the period in which such losses are determined. Because of inherent uncertainties in estimating costs, it is reasonably possible that changes in performance could result in revisions to cost and revenue, which are recognized in the period when the revisions are determined.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Accounting for Acquired Assets and Liabilities Assumed in a Business Combination</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When the Company acquires a business, the Company allocates the purchase price to the assets acquired and liabilities assumed in the transaction at their respective estimated fair values. The Company records any premium over the fair value of net assets acquired as goodwill. Significant judgment is necessary to determine the fair value of the purchase price. The allocation of the purchase price involves judgments and estimates both in characterizing the assets and in determining their fair value. The way the Company characterizes the assets has important implications, as long-lived assets with definitive lives, for example, are depreciated or amortized, whereas goodwill is tested annually for impairment, as explained above.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">With respect to determining the fair value of assets, the most subjective estimates involve valuations of long-lived assets, such as identified intangible assets and property, plant, and equipment.  The Company uses all available information to make these fair value determinations and engage independent valuation specialists to assist in the fair value determination of the acquired long-lived assets. The fair values of long-lived assets are determined using valuation techniques that use discounted cash flow methods, independent market appraisals, and other acceptable valuation techniques. The significant assumptions used to estimate the value of the intangible assets included discount rates, customer attrition, and certain assumptions that form the basis of the forecasted results (e.g., </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">31</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">revenue growth rates and operating profit margin). The significant assumptions related to estimating the fair value of the intangible assets above are forward looking and could be affected by future economic market conditions.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Goodwill and Other Indefinite-lived Intangible Asset Impairment Testing</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's goodwill and indefinite-lived intangible asset balances of $512.4 million and $55.5 million, respectively, which in aggregate represent 46% of total assets as of December&#160;31, 2022, are subject to impairment testing. The Company test goodwill and indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31 and at interim dates when indicators of impairment are present. Indicators of impairment could include a significant long-term adverse change in business climate, poor indicators of operating performance, or a sale or disposition of a significant portion of a reporting unit.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company test goodwill for impairment at the reporting unit level. The Company identifies the Company's reporting units by assessing whether the components of the Company constitute businesses for which discrete financial information is available and segment management regularly reviews the operating results of those components. The Company has eight reporting units, all of which have goodwill. The Company test its indefinite-lived intangible assets for impairment by comparing the fair value of the indefinite-lived intangible asset, determined using a discounted cash flow model, with its carrying amount. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During interim periods, the Company evaluates the potential for goodwill and indefinite-lived intangible asset impairment using a qualitative assessment by considering factors such as, but not limited to, macroeconomic conditions, industry conditions, the competitive environment, changes in the market for the Company's products and services, regulatory and political developments, entity specific factors such as strategy, changes in key personnel, and overall financial performance. Upon completing this assessment, if it is determined that it is more likely than not that the fair value is less than its carrying value, the Company proceeds to a quantitative impairment test.  During the interim periods of 2022, the Company concluded that no indicators of impairment existed at interim dates and did not perform any quantitative interim impairment tests related to goodwill and indefinite-lived intangible assets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company conducts its annual impairment test on all eight reporting units as of October&#160;31, during which the Company test goodwill and other indefinite-lived intangible assets for impairment. On an annual basis, the quantitative goodwill impairment test consists of comparing the fair value of a reporting unit with the carrying amount of the reporting unit including goodwill. If the carrying amount of the reporting unit exceeds the reporting unit&#8217;s fair value, an impairment loss is recognized in the amount by which the carrying value of the reporting unit exceeds the  fair value of  the reporting unit. The assumptions used to determine the fair value of the Company's indefinite-lived intangible assets are consistent with the assumptions employed in the determination of the fair values of the Company's reporting units. An impairment loss would be recognized for the carrying amount in excess of its fair value. The fair values of the impaired trademarks were determined using an income approach consisting of the relief-from-royalty method.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The annual quantitative impairment tests require subjective and complex judgment due to the significant estimation required in determining the fair value of the reporting units and the fair value of indefinite-lived intangible assets. Reporting unit fair value estimates include significant assumptions such as: revenue growth rates, operating margins, estimated royalty rates, company-specific risk premiums used in the weighted-average cost of capital, and EBITDA multiples, which are affected by expectations about future market or economic conditions. The Company performs sensitivity analyses on significant assumptions to evaluate how changes in the estimated fair values of reporting units and indefinite-lived intangible assets respond to changes in assumptions, specifically the revenue growth rates and the weighted-average cost of capital.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the Company's quantitative testing, none of the reporting units as of the Company's testing date had carrying values in excess of their fair values, nor were any of the reporting units "at-risk" of impairment. The Company quantitatively defines "at risk" as a percentage of the excess of the reporting unit's fair value over its carrying amount that is less than 10%.  An "at risk" reporting unit qualitatively represents a reporting unit with a higher degree of uncertainty of the reporting unit's ability to meet its forecasted cash flows based upon revenue growth rate and operating margin assumptions relied upon in the estimation of its fair value. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no impairment charges against goodwill recorded during the years ended December 31, 2022, 2021, and 2020.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">32</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company did not recognize any impairment charges on its indefinite-lived intangible assets in 2022 and 2020. During 2021, the Company recognized $8.3&#160;million of impairment charges on its indefinite-lived intangible assets, due to a rebranding initiative resulting in the discontinuation of two indefinite-lived trademarks in the Agtech segment.</span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_58"></div><div style="margin-top:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent Accounting Pronouncements</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">New accounting pronouncements are issued periodically that affect the Company's current and future operations.  See Note 1 to the Company's consolidated financial statements in Part II, Item 8, Financial Statements and Supplementary Data, of this Annual Report on Form 10-K for further information on recent accounting pronouncements in accordance with U.S. generally accepted accounting principles.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_61"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;7A.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Quantitative and Qualitative Disclosures about Market Risk</span></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the ordinary course of business, the Company is exposed to various market risk factors, including changes in general economic conditions, competition, and raw materials pricing and availability. In addition, the Company is exposed to other financial market risks, primarily related to its long-term debt and foreign operations.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Raw Material Pricing Risk</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is subject to market risk exposure related to volatility in the price of the Company's principal raw materials of steel, aluminum and resins, which are cyclical in nature and have been historically volatile.  Exposure to commodity price fluctuations are generally managed through alignment of the Company's materials costs with pricing to customers by passing increases in raw material costs through to customers and maintaining inventory levels not in excess of the Company's production requirements. The Company may experience unfavorable cost-price alignment if increases in these raw material costs cannot be partially or fully passed on to customers, or if the timing of price increases lags behind the raw material cost increases. The Company cannot accurately calculate the pre-tax impact a one percent change in the commodity costs would have on the Company's 2022 operating results as the change in commodity costs would both impact the cost to purchase materials and the selling prices the Company offers to customers.  The impact to the Company's operating results would significantly depend on the competitive environment and the costs of other alternative products, which could impact the Company's ability to pass commodity costs to customers.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Interest Rate Risk</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company currently utilizes variable interest rate debt to manage interest rate risk, and would consider utilizing fixed rate debt if borrowings were expected to be outstanding for an extended period of time. In order to manage interest rate risk, the Company will continue to monitor changes in its debt levels and access to capital ensuring interest rate risk is appropriately managed.  At December&#160;31, 2022, the Company's available variable rate debt consisted of borrowings under the Company's Credit Agreement, of which $<ix:nonFraction unitRef="usd" contextRef="ide0cba670a934b7fa6ed49872e0a383f_I20221231" decimals="-3" name="us-gaap:DebtInstrumentCarryingAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82MS9mcmFnOmIwM2EzMzVkMzIxOTQxYjliOWYzNjE0NmJlMmNmNjNiL3RleHRyZWdpb246YjAzYTMzNWQzMjE5NDFiOWI5ZjM2MTQ2YmUyY2Y2M2JfMjM2Mw_ed6f02d0-e087-48f7-aa9a-38af6391cc32">91</ix:nonFraction> million was outstanding on the revolving credit facility as of December&#160;31, 2022 and was the only debt outstanding at year end. Effective December 8, 2022, borrowings under the revolving credit facility bore interest at a variable interest rate based upon, at the Company's option, at a rate equal to an additional margin plus (a) a base rate, (b) a daily simple SOFR rate, (c) a term SOFR rate or (d) for certain foreign currencies, a foreign current rate. Prior to December 8, 2022, borrowings under the revolving credit facility under the Company's Sixth Amended and Restated Credit Agreement bore interest at a variable interest rate based upon the LIBOR plus an additional margin. A hypothetical 1% increase or decrease in interest rates would have changed the Company's 2022 interest expense by $0.8 million.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Foreign Exchange Risk</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has foreign exchange risk due to the Company's international operations, primarily in Canada and Asia, and through sales to and purchases from foreign customers and vendors.  Changes in the values of currencies of foreign countries affect the Company's financial position and cash flows when translated into U.S. dollars. The Company principally manages its exposures to many of these foreign exchange rate risks solely through management of its core business activities. The Company cannot accurately calculate the pre-tax impact that a one percent change in the exchange rates of foreign currencies would have on the Company's 2022 operating results as the changes in exchange rates would impact the cost of materials, the U.S. dollar revenue equivalents, and potentially the prices offered to overseas customers.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">33</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_64"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;8.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Financial Statements and Supplementary Data</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:87.609%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.191%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Page&#160;<br/>Number</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Financial Statements:</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_67">Report of Independent Registered Public Accounting Firm</a></span><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (PCAOB ID: <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:AuditorFirmId" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82NC9mcmFnOjVkYzJhYzAyNjlmYzQyNmNhYjhhY2I5YjA4ZTU0Y2Y0L3RhYmxlOmRhMDY3YmFmODhhZTQ5MWQ5ODNhNzE0ODljYTNmZGQwL3RhYmxlcmFuZ2U6ZGEwNjdiYWY4OGFlNDkxZDk4M2E3MTQ4OWNhM2ZkZDBfNS0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOmEwNGViMjRlZWM3YTQ2MWM5NzliYzk2Yjc3OTgyNTY5Xzcx_f202bd7c-c7d8-4fd4-997f-50c26f75137d">42</ix:nonNumeric>)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_67">35</a></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_70">Consolidated Statements of Operations for the Years Ended December&#160;31, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_70">2</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_70">, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_70">1</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_70">, and 20</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_70">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_70">37</a></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_73">Consolidated Statements of Comprehensive Income for the Years Ended December&#160;31, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_73">2</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_73">, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_73">1</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_73">, and 20</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_73">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_73">38</a></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_76">Consolidated Balance Sheets as of December&#160;31, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_76">2</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_76"> and 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_76">1</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_76">39</a></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_79">Consolidated Statements of Cash Flows for the Years Ended December&#160;31, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_79">2</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_79">, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_79">1</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_79">, and 20</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_79">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_79">40</a></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_82">Consolidated Statements of Stockholders&#8217; Equity for the Years Ended December&#160;31, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_82">2</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_82">, 202</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_82">1</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_82">, and 20</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_82">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_82">41</a></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_85">Notes to Consolidated Financial Statements</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_85">42</a></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Index for Notes to Consolidated Financial Statements:</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_88">Note 1. Summary of Significant Accounting Policies</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_88">42</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_91">Note 2. Accounts Receivabl</a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_91">e, Net</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_91">46</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_94">Note 3. Revenue</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_94">46</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_97">Note 4. Inventories</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_97">47</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_100">Note 5. Property, Plant and Equipment</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_100">48</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_103">Note 6. Acquisitions</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_103">48</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_106">Note 7. Goodwill and Related Intangible Assets</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_106">51</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_109">Note 8. Accrued Expenses</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_109">53</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_112">Note 9. Debt</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_112">54</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_115">Note 10. Pension and Other Postretirement Benefits</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_115">55</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_118">Note 11. Accumulated Other Comprehensive Income (Loss)</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_118">57</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_121">Note 12. Equity-Based Compensation</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_121">57</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_124">Note 13. Fair Value Measurements</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_124">61</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_127">Note 14. </a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_127">Held for Sale and </a><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_127">Discontinued Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_127">61</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_130">Note 15. Exit Activity Costs and Asset Impairments</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_130">63</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_133">Note 16. Income Taxes</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_133">64</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_136">Note 17. Earnings per Share</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_136">67</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_139">Note 18. Leases</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_139">67</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_142">Note 19. Commitments and Contingencies</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_142">68</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:30pt"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_145">Note 20. Segment Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0e32e1;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_145">69</a></span></div></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-bottom:17pt;margin-top:12pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">34</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_67"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:18pt;text-align:center"><span><br/></span></div><div style="margin-top:18pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Report of Independent Registered Public Accounting Firm</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To the Stockholders and Board of Directors of Gibraltar Industries, Inc.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Opinion on the Financial Statements</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have audited the accompanying consolidated balance sheets of Gibraltar Industries, Inc. (the Company)</span><span style="color:#333333;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">as of December 31, 2022 and 2021, the related consolidated statements of operations, comprehensive income, stockholders' equity and cash flows for each of the three years in the period ended December 31, 2022, and the related notes (collectively referred to as the &#8220;consolidated financial statements&#8221;). In our opinion, the consolidated financial statements present fairly, in all material respects, the financial position of the Company at December 31, 2022 and 2021, and the results of its operations and its cash flows for each of the three years in the period ended December 31, 2022, in conformity with U.S. generally accepted accounting principles.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also have 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, 2022, based on criteria established in Internal Control&#8211;Integrated Framework issued by the Committee of Sponsoring Organizations of the Treadway Commission (2013 framework), and our report dated February 22, 2023 expressed an unqualified opinion thereon.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis for Opinion</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These financial statements are the responsibility of the Company's management. Our responsibility is to express an opinion on the Company&#8217;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.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Critical Audit Matter </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The critical audit matter communicated below is a matter arising from the current period audit of the financial statements that was communicated or required to be communicated to the audit committee and that: (1) relates to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective or complex judgments. The communication of the critical audit matter does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matter or on the accounts or disclosures to which it relates.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">35</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:12.809%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.996%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:82.795%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue Recognition on Contracts</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Description of the Matter</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2022, the amount of revenue recognized over time was $555 million. As discussed in Note 1 to the consolidated financial statements, the Company&#8217;s revenue on contracts is accounted for based on the cost-to-cost input measure of progress, whereby the extent of progress toward completion is measured based on the ratio of costs incurred to date to the total estimated costs at completion of the performance obligation. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Auditing management&#8217;s estimates to complete for certain components is especially subjective due to significant judgment required in estimating the remaining costs to complete. Factors inherent in the estimation process include direct labor hours, direct material costs, and other direct costs. Due to uncertainties attributed to such factors, a significant change in an estimate on one or more contracts could have a material effect on the Company&#8217;s results of operations.</span></div><div style="text-align:justify"><span><br/></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">How We Addressed the Matter in Our Audit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We obtained an understanding, evaluated the design and tested the operating effectiveness of controls that address the risks of material misstatement relating to the measurement and valuation of the Company&#8217;s review of estimated costs to complete, including the determination of the underlying significant assumptions and the completeness and accuracy of the open contracts reviewed. For example, we tested controls over management&#8217;s quarterly review of the cost estimates, monthly review of open contracts and completed contracts, and review over the cost estimates used to develop initial cost estimates on projects.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To test the amount of revenue recognized from contracts, our audit procedures included, among others, assessing whether the performance obligations identified were appropriately recognized on an over time basis through inspection of the contract and inquiry from program management regarding the nature and scope of work and testing the completeness and accuracy of the data underlying the determination of the amount of revenue recognized in the current period. To assess the over time revenue recognition, we tested that the actual costs incurred on the project are complete and accurate through agreement to supporting evidence. Our testing of the assumptions included a combination of confirmation of contract terms, billings, and project status directly with customers, inquiries of the program management and financial personnel, inspection of evidence to support future estimated costs,  performance of an analysis of actual gross margin on completed contracts compared to prior estimates, evaluation of subsequent year-end expenses incurred on projects, and assessment of the historical accuracy of management&#8217;s estimates by analyzing changes in project gross margins during project lifecycles and determining if those changes were driven by cost factors that should have been known or could have been reasonably estimated at project inception. </span></div><div style="text-align:justify"><span><br/></span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">/s/ <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:AuditorName" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82Ny9mcmFnOjAxNzBmMDk3MDE2ZDRiNmQ4NGIzMjJhZTZmN2Q2MzgyL3RleHRyZWdpb246MDE3MGYwOTcwMTZkNGI2ZDg0YjMyMmFlNmY3ZDYzODJfMzc1Mw_4066a0a3-7c00-4422-a4b9-ef3c383826b5">Ernst &amp; Young LLP</ix:nonNumeric></span></div><div style="padding-left:288pt;text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have served as the Company&#8216;s auditor since 2005.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="dei:AuditorLocation" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82Ny9mcmFnOjAxNzBmMDk3MDE2ZDRiNmQ4NGIzMjJhZTZmN2Q2MzgyL3RleHRyZWdpb246MDE3MGYwOTcwMTZkNGI2ZDg0YjMyMmFlNmY3ZDYzODJfMzgxMA_18bf6b5c-8030-4ff1-b52e-da9c373386b8">Boston, Massachusetts</ix:nonNumeric> </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February 22, 2023</span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">36</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_70"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GIBRALTAR INDUSTRIES, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF OPERATIONS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands, except per share data)</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Years Ended December&#160;31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMi0xLTEtMS03ODYwOA_896c46a5-8f10-4704-a35d-ad15aa03fd03">1,389,966</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMi0zLTEtMS03ODYwOA_20471749-7a8d-4cad-af92-78ec7920a91a">1,339,783</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMi01LTEtMS03ODYwOA_bc2db4b7-646a-4e7e-bc22-27536234fadf">1,032,578</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:CostOfRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMy0xLTEtMS03ODYwOA_2de7322a-a9a3-4b80-82cb-15d33f1fd39d">1,071,272</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:CostOfRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMy0zLTEtMS03ODYwOA_25ccb5e3-2a80-4dd9-b781-152619bca4f4">1,049,772</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:CostOfRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMy01LTEtMS03ODYwOA_ee3f3438-f437-4b7b-b12c-646136c5e9b4">776,235</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNC0xLTEtMS03ODYwOA_b074b931-bbb4-42dc-8612-62768fe4e3c4">318,694</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNC0zLTEtMS03ODYwOA_918db8b8-5567-48ed-9436-6dc911bf3f32">290,011</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNC01LTEtMS03ODYwOA_368f991f-6f4b-4c96-8e7e-cdf27887033c">256,343</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNS0xLTEtMS03ODYwOA_d242c1c0-2f0d-457d-a0e2-c6da45f6676b">188,592</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNS0zLTEtMS03ODYwOA_1bf2dfe0-9d8d-4869-ba07-fdb896b1ba16">184,723</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNS01LTEtMS03ODYwOA_5aa49870-7a3f-4181-9445-36f36db11d4c">149,153</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible asset impairment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNi0xLTEtMS03ODYwOA_19a47de7-aad9-49e3-a83c-40ca81aa24d9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNi0zLTEtMS03ODYwOA_a61137fa-8d36-4513-94b2-e8e6465d0e2d">8,300</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNi01LTEtMS03ODYwOA_386421fa-2e68-4164-9478-7a2f068c1638">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from operations</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNy0xLTEtMS03ODYwOA_9cf22ca0-7c60-4480-893f-52c205cad37c">130,102</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNy0zLTEtMS03ODYwOA_f0381e14-1863-46ef-91ba-142373fcc456">96,988</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNy01LTEtMS03ODYwOA_03deaa6c-01f0-4db7-a3c4-b7544372eb9d">107,190</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOC0xLTEtMS03ODYwOA_51be01f4-5291-4c96-ac37-b15a333d34e5">4,047</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOC0zLTEtMS03ODYwOA_56acc200-b7c6-40f0-9b7f-14aca3c57b1e">1,639</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOC01LTEtMS03ODYwOA_ba3b28f7-e63d-4b93-a5fa-e7b7620a22a8">703</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expense (income)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherIncome" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOS0xLTEtMS03ODYwOA_0a5564bd-f671-4999-bedf-cc6dd74579a2">14,565</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OtherIncome" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOS0zLTEtMS03ODYwOA_5311aa38-3e03-426e-8df5-4a4fb4371ffd">4,213</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OtherIncome" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOS01LTEtMS03ODYwOA_6c50f5ff-9e31-44aa-a523-6f1c4caa05ce">1,272</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before taxes</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTAtMS0xLTEtNzg2MDg_5aa1839f-6911-47ab-819f-f0be6e4c8b01">111,490</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTAtMy0xLTEtNzg2MDg_562d3347-45e4-44bd-8f0e-69e0537f785e">99,562</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTAtNS0xLTEtNzg2MDg_410ef491-5285-409e-bebc-bbf501a58f01">107,759</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTEtMS0xLTEtNzg2MDg_f11dff5c-8196-4aa4-af41-c1f24ba8f9df">29,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTEtMy0xLTEtNzg2MDg_d2e8fcb0-aa9f-4b22-8eb5-3f79eecd463d">25,046</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTEtNS0xLTEtNzg2MDg_b3ba185c-a009-459e-9ca8-eab42b129cf3">24,468</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTItMS0xLTEtNzg2MDg_e1796352-d1be-41c2-9d9a-98d7b988e70d">82,406</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTItMy0xLTEtNzg2MDg_c35f57c4-c3d1-4515-97d6-7475aa920c25">74,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTItNS0xLTEtNzg2MDg_ec5125de-01dd-4891-80c1-eebd2de6abbe">83,291</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Discontinued operations:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) before taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTQtMS0xLTEtNzg2MDg_e0613049-dd33-40de-87fb-14e71deefea2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTQtMy0xLTEtNzg2MDg_7ba3df7f-96ce-4cd1-a390-cf55473af4a9">1,479</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTQtNS0xLTEtNzg2MDg_7d256acc-3414-4768-91f0-adef477250c2">16,602</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTUtMS0xLTEtNzg2MDg_d82169d6-13fc-4b20-83a0-c4db5e5656ae">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTUtMy0xLTEtNzg2MDg_41816333-e41d-4312-9c30-02317a684994">366</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTUtNS0xLTEtNzg2MDg_dd09cb5f-0534-48f9-afaf-ee8b18e1eeaa">2,123</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTYtMS0xLTEtNzg2MDg_dfa48a68-364e-45f6-a8ee-27f05f6098ef">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTYtMy0xLTEtNzg2MDg_126ece23-ba0d-4c8f-ba5b-c48170990893">1,113</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTYtNS0xLTEtNzg2MDg_6acbe0b6-2821-461d-9c84-16a545ebff49">18,725</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTctMS0xLTEtNzg2MDg_90b36e31-dcae-4f05-ac45-79a13b6baf26">82,406</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTctMy0xLTEtNzg2MDg_8736f05e-8ac9-4e72-934b-b67fc4be4dab">75,629</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTctNS0xLTEtNzg2MDg_c616d76e-68e8-452e-8f87-23a1e48c038e">64,566</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net earnings per share &#8211; Basic:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTktMS0xLTEtNzg2MDg_ba12e59c-d51b-4bc4-8887-3bfd1deac7ab">2.57</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTktMy0xLTEtNzg2MDg_d61cd370-3300-4a97-a22d-dff2b1234ef7">2.27</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTktNS0xLTEtNzg2MDg_f430e760-04e8-4d24-88b5-650de83bccb3">2.55</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjAtMS0xLTEtNzg2MDg_e674ef73-6937-4dd0-a8fc-3e75fb07d7dc">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjAtMy0xLTEtNzg2MDg_88b7ae5e-f0bd-4a2e-9d7a-436c51f79419">0.03</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="2" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjAtNS0xLTEtNzg2MDg_0f9f754e-7b9a-4f17-85c6-5511208a3b70">0.57</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjEtMS0xLTEtNzg2MDg_530f7990-75b7-4d9a-baff-566ead379f1e">2.57</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjEtMy0xLTEtNzg2MDg_2c4103c3-8225-4696-ad32-f026654182ea">2.30</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjEtNS0xLTEtNzg2MDg_9f60d1de-02b7-4c8d-ac3e-8fdada1ee698">1.98</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding &#8211; Basic</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjItMS0xLTEtNzg2MDg_6387d5e4-6a2e-418f-884a-a7181adbc8df">32,096</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjItMy0xLTEtNzg2MDg_3496ce0b-6929-416f-b44a-89809296d8ef">32,873</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjItNS0xLTEtNzg2MDg_caa418a8-434b-4512-84b8-4a9732085818">32,664</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net earnings per share &#8211; Diluted:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjQtMS0xLTEtNzg2MDg_3d9238de-8004-4c06-bfdf-5a8a13ce91d7">2.56</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjQtMy0xLTEtNzg2MDg_8b1e4735-377b-4894-a1e8-703b75f37d51">2.25</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjQtNS0xLTEtNzg2MDg_ec726d5a-f164-423f-8477-4fe7a963b416">2.53</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjUtMS0xLTEtNzg2MDg_4ef02667-4938-47df-9893-a36672b816db">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjUtMy0xLTEtNzg2MDg_ee9d42e9-89f2-4df3-a2ac-87046ae1d765">0.04</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="2" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjUtNS0xLTEtNzg2MDg_1fa853a4-1649-48bc-a48f-2f8077da11b9">0.57</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjYtMS0xLTEtNzg2MDg_1aceea50-32cb-4d25-ae92-718481877e40">2.56</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjYtMy0xLTEtNzg2MDg_88a1a3d6-ab0b-47af-a765-da04f81caa50">2.29</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjYtNS0xLTEtNzg2MDg_76ff9d2d-6bc7-4dc2-833b-238b1f7c7977">1.96</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding &#8211; Diluted</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjctMS0xLTEtNzg2MDg_b28ac17e-80c2-4f37-991c-2a93fdcf7805">32,192</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjctMy0xLTEtNzg2MDg_eabb3a30-93cd-4b83-a708-ccbca78e26c8">33,054</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjctNS0xLTEtNzg2MDg_e2ca5a60-74f6-4926-998a-b5305f084c7b">32,918</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to consolidated financial statements.</span></div><div style="height:54pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">37</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_73"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GIBRALTAR INDUSTRIES, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands)</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.396%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.914%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.529%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.914%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.529%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.918%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Years Ended December&#160;31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi0xLTEtMS03ODYwOA_200bead6-e53b-4ab6-946e-d81d9246a0b6"><ix:nonFraction unitRef="usd" contextRef="i60c7ad643ee24947a0507767fd7af229_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi0xLTEtMS03ODYwOA_b93e06df-b4c2-4030-b2cf-7e35d020f837">82,406</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi0zLTEtMS03ODYwOA_9d741c8e-1b2c-4778-9d17-3493121f5a4c">75,629</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi01LTEtMS03ODYwOA_b6d14b7c-20ec-42b0-9c84-8c3e5d2b81be">64,566</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other comprehensive (loss) income:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNC0xLTEtMS03ODYwOA_e7e3f1d1-6e3a-482d-9bb5-e491f79b8244">5,022</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNC0zLTEtMS03ODYwOA_1d870706-e4e3-4bf5-bc23-c7ae37b5e576">2,512</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNC01LTEtMS03ODYwOA_5bf3787e-437b-4a9f-a9f6-eac869c3bf52">3,301</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustment to post-retirement benefit liability, net of tax</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNy0xLTEtMS03ODYwOA_f453f4ac-6aa4-4f16-8081-cdcf9e38d87e">1,403</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNy0zLTEtMS03ODYwOA_60321b83-cacb-417b-8ecd-684f5ef07272">136</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNy01LTEtMS03ODYwOA_eb9e194c-4166-40e5-b625-a983af43529b">371</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other comprehensive (loss) income</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOC0xLTEtMS03ODYwOA_5bccb4e5-0e3b-4d9d-9572-9d9c8d2b665c">3,619</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOC0zLTEtMS03ODYwOA_7046162d-c09e-4da5-aa9b-c0a6699f6aac">2,648</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOC01LTEtMS03ODYwOA_f49839f8-070f-4894-9621-2cec514f6eb1">2,930</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total comprehensive income</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOS0xLTEtMS03ODYwOA_70a5317f-c19e-4638-b40b-ef523954020c">78,787</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOS0zLTEtMS03ODYwOA_0b19a010-e1cd-4fa6-83bb-9aa40ba487fe">78,277</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOS01LTEtMS03ODYwOA_52546951-a866-426c-b9e1-fd0910fea0d2">67,496</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to consolidated financial statements.</span></div><div style="height:54pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">38</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_76"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GIBRALTAR INDUSTRIES, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED BALANCE SHEETS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands)</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:70.391%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.791%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMy0xLTEtMS03ODYwOA_75249736-62de-4357-8eb4-d4732dc2e20a">17,608</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMy0zLTEtMS03ODYwOA_e1d34af8-3b39-4b1c-be54-607c6b102ed2">12,849</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net of allowance of $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOmJlZDM2MDJkZWEzNjQyMDJhY2E0NGNiODUyNjEzYTRkXzQ2_b5cb4350-0326-4d48-bc55-14eeac03c084">3,746</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOmJlZDM2MDJkZWEzNjQyMDJhY2E0NGNiODUyNjEzYTRkXzU0_f8e6f7cf-7f7e-4210-a9bb-317ceb601af3">3,738</ix:nonFraction>, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0xLTEtMS03ODYwOA_d5b39494-595d-4bcd-82e8-5388a7d4d5cc">217,156</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0zLTEtMS03ODYwOA_b72fa3d7-b9b3-4922-9971-2916c6d64054">236,444</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNS0xLTEtMS03ODYwOA_62311451-5732-4449-b5f0-6c60552e4c6d">170,360</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNS0zLTEtMS03ODYwOA_ce29fc25-5db0-4e89-8677-2a14413028fb">176,207</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNi0xLTEtMS03ODYwOA_85f021b7-a985-433a-8c60-c93e2c1b5bf2">18,813</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNi0zLTEtMS03ODYwOA_f940089a-beea-4303-ac51-8c7e206ef5bf">21,467</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOC0xLTEtMS03ODYwOA_7eacf93e-3bf1-4368-bbd3-658d376430ed">423,937</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOC0zLTEtMS03ODYwOA_0baa1f74-902c-4a55-89be-152f2e37e459">446,967</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOS0xLTEtMS03ODYwOA_38420e18-e25f-4152-8520-d651431d03c2">109,584</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOS0zLTEtMS03ODYwOA_0a4e0748-2f7c-47d6-a0bd-60a3efc393e2">96,885</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTAtMS0xLTEtNzg2MDg_e5b7642c-8cb8-458b-ba34-e64cf6cbe964">26,502</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTAtMy0xLTEtNzg2MDg_0f5618db-f9e6-47cc-b311-ea7599a61366">18,120</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTEtMS0xLTEtNzg2MDg_b8ee24b7-16f6-4603-8ce5-08b4e44df4d1">512,363</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTEtMy0xLTEtNzg2MDg_cb236671-2ec3-460a-8202-f63381f1db78">510,942</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTItMS0xLTEtNzg2MDg_4684de4c-4e99-4bbd-b4fa-77e60fa2f079">137,526</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTItMy0xLTEtNzg2MDg_f525ac09-244c-458e-ab21-d6e8247baf24">141,504</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTMtMS0xLTEtNzg2MDg_8fbced84-794e-4e2b-874e-a50391f97f77">701</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTMtMy0xLTEtNzg2MDg_c1fb6e69-3d8f-47b2-b880-e7eec847d43e">483</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTUtMS0xLTEtNzg2MDg_d0aaf9bf-2a12-4069-81df-8cf7409a275c">1,210,613</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTUtMy0xLTEtNzg2MDg_136041f2-dd20-41e2-aafd-b5221c23cbc4">1,214,901</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities and Stockholders&#8217; Equity</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTgtMS0xLTEtNzg2MDg_f5b726c8-902c-40f0-b057-53f02faeb9ac">106,582</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTgtMy0xLTEtNzg2MDg_be784273-5846-4e8e-9fa1-6ee5e9f205e7">172,286</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTktMS0xLTEtNzg2MDg_800d3448-0553-4a03-af8a-fedbdd22b925">73,721</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTktMy0xLTEtNzg2MDg_3089e7fe-0d15-4906-9fd6-3ceb0b92b6b7">67,993</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billings in excess of cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjAtMS0xLTEtNzg2MDg_fcfd99bb-247d-4282-bf10-4efc8f9b6cbc">35,017</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjAtMy0xLTEtNzg2MDg_f77bf9ba-6757-48a4-90e8-35f5bb2a9169">46,711</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjMtMS0xLTEtNzg2MDg_f7e7d440-f836-4858-bc54-65f6bf848168">215,320</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjMtMy0xLTEtNzg2MDg_3c980242-d3cf-4838-a573-66b57012b81b">286,990</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjQtMS0xLTEtNzg2MDg_6adabee6-e2d6-41fe-af73-d591f511c9ec">88,762</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjQtMy0xLTEtNzg2MDg_8697d2fb-adae-4a24-abdb-6e51b211b7f5">23,781</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjUtMS0xLTEtNzg2MDg_73ba95a0-6c55-467c-8905-5e775c92e63e">47,088</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjUtMy0xLTEtNzg2MDg_127679a5-c587-4efb-9e26-5c83fb5253a5">40,278</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjYtMS0xLTEtNzg2MDg_609b6d55-4e28-4fdf-8d0e-c261b8850ab2">19,041</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjYtMy0xLTEtNzg2MDg_aa8e1884-e803-4c9d-923d-a51e4f57da2a">11,390</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjctMS0xLTEtNzg2MDg_1cabdac1-b92a-47e0-9a94-0033f0bb2345">18,303</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjctMy0xLTEtNzg2MDg_6b461556-238f-4ec7-a3bf-9007887d77b9">27,204</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stockholders&#8217; equity:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Preferred stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl8yMQ_2e88e7ed-4ca7-4fd8-9c2a-47c280c5a2c5"><ix:nonFraction unitRef="usdPerShare" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl8yMQ_a1a45920-c098-4534-93e1-496192696d8c">0.01</ix:nonFraction></ix:nonFraction> par value; authorized <ix:nonFraction unitRef="shares" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl80Ng_15f5f285-4c44-45af-a658-7f4213d95687"><ix:nonFraction unitRef="shares" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl80Ng_c1a9af0a-600d-4ec6-a0f9-bee340beec87">10,000</ix:nonFraction></ix:nonFraction> shares; <ix:nonFraction unitRef="shares" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl81Nw_0d16d8a2-6c2d-4632-a89a-0408701248c4"><ix:nonFraction unitRef="shares" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl81Nw_8f9ded13-0b31-434e-a85a-5d5f16bff961">none</ix:nonFraction></ix:nonFraction> outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMS0xLTEtNzg2MDg_f61ae1ae-f464-4cd5-9bf6-e9dcaaf51353">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMy0xLTEtNzg2MDg_efaf84fc-8e49-4266-8f09-c64195cc37d4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="2" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N18xOA_3e02424d-db72-46c1-ba71-50b82aec1f59"><ix:nonFraction unitRef="usdPerShare" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="2" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N18xOA_762cd482-e009-40db-a858-5747c6334593">0.01</ix:nonFraction></ix:nonFraction> par value; authorized <ix:nonFraction unitRef="shares" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N180Mw_df6fa550-ccea-4eef-bd18-42487c44461e">100,000</ix:nonFraction> shares; <ix:nonFraction unitRef="shares" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N183NA_87f83f9e-a12b-43fc-bc11-ce08d8c7d80a"><ix:nonFraction unitRef="shares" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N183NA_a15a27cd-ce7c-476b-ad65-dd39aba57c45">34,060</ix:nonFraction></ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N184MQ_181d5c3e-c63c-46f2-ab9f-5c5ca4e53cbb"><ix:nonFraction unitRef="shares" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N184MQ_d64a2439-b8d3-4d7c-b975-79d6cfee4803">33,799</ix:nonFraction></ix:nonFraction> shares issued and outstanding in 2022 and 2021</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMS0xLTEtNzg2MDg_dceb4838-bc02-4d47-83b2-9b9da0e50a1f">340</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMy0xLTEtNzg2MDg_62a76d83-a2bd-4a15-869f-f9754d6ec006">338</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additional paid-in capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AdditionalPaidInCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzItMS0xLTEtNzg2MDg_8bd21eba-98c5-4ec4-b238-d0e0c39f5cff">322,873</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AdditionalPaidInCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzItMy0xLTEtNzg2MDg_e030a649-9ba0-4d8a-bd5d-62ba3c7aa546">314,541</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Retained earnings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzMtMS0xLTEtNzg2MDg_97a92ff7-ba10-4bca-aa2d-5d7e597ef32f">627,978</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzMtMy0xLTEtNzg2MDg_f253b6ff-33be-431e-9486-7eb6dce626bc">545,572</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated other comprehensive (loss) income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzQtMS0xLTEtNzg2MDg_b770cb1a-ab15-4c05-bc34-803545820d4f">3,432</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzQtMy0xLTEtNzg2MDg_63c14ecc-c7d9-46ed-af0c-0086eb2a135c">187</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of <ix:nonFraction unitRef="shares" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:TreasuryStockShares" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyZjljYjZkOTFmNTY0YzQzOWU5YWQxMDlmMDQ4NjcyZV8xMg_c43acdd5-0222-44fe-a28b-3778b8f6cd7a">3,199</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:TreasuryStockShares" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyZjljYjZkOTFmNTY0YzQzOWU5YWQxMDlmMDQ4NjcyZV8xOQ_ec46c6fd-1c75-4e76-b510-bd9ed9fe5b72">1,107</ix:nonFraction> common shares held in treasury in 2022 and 2021</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:TreasuryStockValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMS0xLTEtNzg2MDg_368a517d-7f31-44aa-9c5f-984b48d3ba1f">125,660</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:TreasuryStockValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMy0xLTEtNzg2MDg_43586c95-234d-4a50-b600-f34b0a55bb53">35,380</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stockholders&#8217; equity</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzYtMS0xLTEtNzg2MDg_b029e7fc-e420-4dd3-b389-03aaa11335df">822,099</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzYtMy0xLTEtNzg2MDg_9e8ad638-8b92-465f-948f-c91e520eca1c">825,258</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzctMS0xLTEtNzg2MDg_45e35dd9-d790-409a-9a62-1d9489000e6e">1,210,613</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzctMy0xLTEtNzg2MDg_86b2c98d-b08f-4f52-874d-f93b8ac2c235">1,214,901</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to consolidated financial statements.</span></div><div style="height:54pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">39</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_79"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GIBRALTAR INDUSTRIES, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF CASH FLOWS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands)</span></div><div style="margin-bottom:6pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Years Ended December&#160;31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Cash Flows from Operating Activities</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income </span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMy0xLTEtMS03ODYwOA_4ebf1f23-ce63-495b-9209-14574cf2a387">82,406</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMy0zLTEtMS03ODYwOA_0dae0be1-1b4f-44e2-8f9d-ef567f2a3eb8">75,629</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMy01LTEtMS03ODYwOA_a8b628e0-3444-453a-8064-9cbc9ccd506b">64,566</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNC0xLTEtMS03ODYwOA_f6ac9b0c-6cb2-439b-b995-90a3206dad8c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNC0zLTEtMS03ODYwOA_1e8c5098-cf0c-4916-8886-1849008f3821">1,113</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNC01LTEtMS03ODYwOA_e9749107-a3f9-4464-8ba9-1b1fb73ae9e7">18,725</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNS0xLTEtMS03ODYwOA_91492c3d-a34a-4efc-ae91-a2930d55980b">82,406</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNS0zLTEtMS03ODYwOA_9cbc70a3-f6a3-4175-89d1-f7dde4ab913d">74,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNS01LTEtMS03ODYwOA_d79fd951-bd8e-491b-80ad-427593b0a23d">83,291</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="18" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to reconcile net income to net cash provided by operating activities:</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNy0xLTEtMS03ODYwOA_0f89f90b-a826-4763-bc70-ecfe3b21e9e8">26,167</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNy0zLTEtMS03ODYwOA_c74cc60e-3dd2-4e87-a568-05ba9886347c">31,966</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNy01LTEtMS03ODYwOA_500b768d-3a67-433b-ba1c-7e635f7498f5">20,915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible asset impairment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOC0xLTEtMS03ODYwOA_4736fa6c-eedb-46fc-909c-427020ccd8de">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOC0zLTEtMS03ODYwOA_bfaba4eb-df89-431b-aa11-a3ce485b10fc">8,300</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOC01LTEtMS03ODYwOA_264ee3b4-3efa-4b5d-98da-1a8856beeaef">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Held for sale valuation allowance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOS0xLTEtMS03ODYwOA_c86b56af-db1a-47a1-a477-941ecdd8026b">13,990</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOS0zLTEtMS03ODYwOA_7af92475-a373-476c-ab8f-6fe5eb93d114">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOS01LTEtMS03ODYwOA_34231174-76bd-46b7-8e48-6f4b14a37ba9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock compensation expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTAtMS0xLTEtNzg2MDg_0b156e58-b01d-4a56-9b9d-b6d39bf8156f">8,334</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTAtMy0xLTEtNzg2MDg_47988a9f-ba3b-4e91-81f6-da0a7834bd7a">8,652</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTAtNS0xLTEtNzg2MDg_9bec1bbb-a9c9-447c-99a5-b5a9e0147969">8,173</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exit activity costs, non-cash</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTItMS0xLTEtNzg2MDg_92eacea6-771f-4f67-932e-bcb732aa237e">2,276</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTItMy0xLTEtNzg2MDg_ade7f985-63c3-4300-9a6b-2807b5dd74d1">1,193</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTItNS0xLTEtNzg2MDg_017b4f44-279f-467a-904a-84dc862dafea">493</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for deferred income taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTMtMS0xLTEtNzg2MDg_449dd7cc-5089-41e0-8537-9342f60d47a8">6,337</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTMtMy0xLTEtNzg2MDg_5cde3db0-0de6-4295-aadb-53e1f12a2f6d">2,968</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTMtNS0xLTEtNzg2MDg_29f4936b-c782-4e10-a72d-2ccc25e5d623">3,786</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherNoncashIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTQtMS0xLTEtNzg2MDg_7b03feba-c534-4fe8-b159-c5edaffc503d">1,506</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherNoncashIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTQtMy0xLTEtNzg2MDg_8d0811a0-bc76-49d1-aec8-bebfa74857c8">1,570</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherNoncashIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTQtNS0xLTEtNzg2MDg_317102c7-810d-41c1-8e02-e823cb1c17cd">63</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="18" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in operating assets and liabilities (excluding the effects of acquisitions):</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTYtMS0xLTEtNzg2MDg_da0b333a-0590-489a-9a00-5e313249e1e9">32,754</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTYtMy0xLTEtNzg2MDg_f16225ce-209c-4668-b304-554261b424f7">41,887</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTYtNS0xLTEtNzg2MDg_edcaa538-112e-48ef-b4df-136ffc9b8cbd">2,277</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTctMS0xLTEtNzg2MDg_21803dac-fe3f-420c-8528-5a1712d4ea8d">14,377</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTctMy0xLTEtNzg2MDg_b8d1e85b-477c-4723-b66d-43228968e7fe">85,763</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTctNS0xLTEtNzg2MDg_5ff36b70-447e-44ef-a8fc-ca1f14e1259e">5,719</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets and other assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTgtMS0xLTEtNzg2MDg_689c95ee-7919-43d6-9c1c-99f4a9383262">2,062</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTgtMy0xLTEtNzg2MDg_7ada2bd1-451d-435f-87ba-ac363a80d490">426</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTgtNS0xLTEtNzg2MDg_6420a85a-9546-4398-a5ba-4d099c0a9ab9">5,467</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTktMS0xLTEtNzg2MDg_dbcf8202-2fbc-4983-8bb4-33eb07f96f6f">76,260</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTktMy0xLTEtNzg2MDg_032fda4d-6a7c-4287-a19e-3a0d54a440a4">38,367</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTktNS0xLTEtNzg2MDg_3f5fafec-5253-4578-a091-e31aba113fa2">1,160</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses and other non-current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjAtMS0xLTEtNzg2MDg_829a718a-a672-4a41-af43-993d1749ff92">11,258</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjAtMy0xLTEtNzg2MDg_ab122528-e256-4313-a10c-f711fa49ebed">14,384</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjAtNS0xLTEtNzg2MDg_8ad63f1a-c339-4afd-a48a-72f3c6ef715f">44,570</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash provided by operating activities of continuing operations</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjEtMS0xLTEtNzg2MDg_0b54a44c-37f1-4f8d-9ce3-2631bb6c1a81">102,691</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjEtMy0xLTEtNzg2MDg_1296e95b-2aff-4586-b9f4-a3dc35049eb0">25,072</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjEtNS0xLTEtNzg2MDg_a6b2e882-abd0-4f70-bc13-b0fdabe79ddd">73,016</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash (used in) provided by operating activities of discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjItMS0xLTEtNzg2MDg_0b64ff6b-6f0e-474d-aace-0f74b1683feb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjItMy0xLTEtNzg2MDg_32c5626c-3973-40b5-8fdf-34bc33321673">2,002</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjItNS0xLTEtNzg2MDg_a5041a22-cc75-48d7-8cc6-5f442ddc0863">16,088</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash provided by operating activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjMtMS0xLTEtNzg2MDg_1447b96f-3602-4cc8-a804-c5ce4ab7bac7">102,691</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjMtMy0xLTEtNzg2MDg_41e49b71-c798-4abe-93c3-e4ba1f6bf545">23,070</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjMtNS0xLTEtNzg2MDg_511c08ed-1edc-461a-bc52-a864ae22c200">89,104</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Cash Flows from Investing Activities</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Purchases of property, plant, and equipment, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:PaymentsToAcquirePropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjUtMS0xLTEtNzg2MDg_2474288c-664f-42e9-b86d-a1138c25f9fe">20,062</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="rock:PaymentsToAcquirePropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjUtMy0xLTEtNzg2MDg_c84183bc-cd86-4c13-912e-1bed074e436a">17,491</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:PaymentsToAcquirePropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjUtNS0xLTEtNzg2MDg_a020133d-6279-4e43-89c6-637637a77e9a">12,991</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisitions, net of cash acquired</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjYtMS0xLTEtNzg2MDg_7b1d5431-3c82-402f-9704-df2449df5dac">51,621</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjYtMy0xLTEtNzg2MDg_05ae5879-16d8-4a52-a384-0e5d49ab4448">4,143</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjYtNS0xLTEtNzg2MDg_e2879c9c-bb01-43a4-843f-a3ae0a51f832">313,686</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net proceeds from sale of business</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjgtMS0xLTEtNzg2MDg_28cf93c5-2d14-4efa-a168-8dd9cd2a68e3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjgtMy0xLTEtNzg2MDg_051edf10-5353-4b4c-85ab-12e07b62656c">38,062</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjgtNS0xLTEtNzg2MDg_f8786a31-cde4-4123-a8d1-3d5b2afe5af5">2,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash (used in) provided by investing activities of continuing operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzAtMS0xLTEtNzg2MDg_f2fc8998-7de0-49e2-b5b3-babd47cddf62">71,683</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzAtMy0xLTEtNzg2MDg_692a4178-65bc-4ee4-aecd-069e030cedaf">24,714</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzAtNS0xLTEtNzg2MDg_97ef96f7-c410-4e8e-87e5-01074e1c33df">324,677</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash used in investing activities of discontinued operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzEtMS0xLTEtNzg2MDg_4c05c38b-75f7-49f6-9179-49164248c8fb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzEtMy0xLTEtNzg2MDg_cd9b8411-389b-48f9-a2d7-c4631f54cf99">176</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzEtNS0xLTEtNzg2MDg_a5b30cdd-0134-42eb-8245-2477f5eb96d4">2,033</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash (used in) provided by investing activities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzItMS0xLTEtNzg2MDg_c0315aa7-9138-4f38-bb7a-dda7b6e44000">71,683</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzItMy0xLTEtNzg2MDg_17a80178-1b05-4dab-90cd-b67654e1f454">24,538</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzItNS0xLTEtNzg2MDg_dbfc2c1a-d9f0-416c-9730-e24335cd6dce">326,710</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Cash Flows from Financing Activities</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term debt payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzQtMS0xLTEtNzg2MDg_6622033d-79c7-4fcb-8663-711b180c210d">138,000</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzQtMy0xLTEtNzg2MDg_f030ec2d-1a0b-4df2-b46b-8730dffb5b0a">120,636</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzQtNS0xLTEtNzg2MDg_46e2bd06-9ea0-42da-8683-97797494e09b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from long-term debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzUtMS0xLTEtNzg2MDg_97d326b6-3498-4ad6-b44b-d65cecc38676">204,500</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzUtMy0xLTEtNzg2MDg_544d3ed9-61cb-4e14-86b1-23de5906449e">59,500</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzUtNS0xLTEtNzg2MDg_02e7661a-7e70-4f45-b70c-7129f7a5d963">85,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payment of debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzctMS0xLTEtNzg2MDg_a66ba3e4-ce1b-4947-a4c6-e9fab210b2ba">2,013</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzctMy0xLTEtNzg2MDg_bba3cfd7-6136-4a71-b553-27ee4208e1e5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzctNS0xLTEtNzg2MDg_4f20cece-dcfc-4928-a024-391be2edcf6c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Purchase of common stock at market prices</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzgtMS0xLTEtNzg2MDg_8705915f-0e48-4e62-82ee-5af2252a7842">89,494</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzgtMy0xLTEtNzg2MDg_fac0e2ab-b07f-4619-bf76-0edccca04191">6,497</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzgtNS0xLTEtNzg2MDg_3202c2f3-b1df-4a1e-82a7-528fcd558460">6,656</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net proceeds from issuance of common stock</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfCommonStock" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDAtMS0xLTEtNzg2MDg_f49fee3e-fe12-4a53-ad71-d3e180ea6941">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDAtMy0xLTEtNzg2MDg_813d2290-0dce-4df5-9251-7deed1c6fcc8">1,021</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDAtNS0xLTEtNzg2MDg_a9c6d49c-3a74-4b8f-b035-ceb06c0871e8">1,119</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash (used in) provided by financing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDEtMS0xLTEtNzg2MDg_602276b4-e07b-4713-9601-348ae6f2c210">25,007</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDEtMy0xLTEtNzg2MDg_a9c00518-461a-483e-943c-334fe4e9b4bf">66,612</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDEtNS0xLTEtNzg2MDg_9db3d2ec-5343-4d48-baa5-d79656f49613">79,463</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of exchange rate changes on cash</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDItMS0xLTEtNzg2MDg_e808881b-846f-4e49-88d0-a8beb10a8556">1,242</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDItMy0xLTEtNzg2MDg_7551edfb-0205-4175-8ca4-b355a2928ec1">201</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDItNS0xLTEtNzg2MDg_ef70f084-fc7c-49a3-9928-64f1e3264b6c">1,166</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net increase (decrease) in cash and cash equivalents</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDMtMS0xLTEtNzg2MDg_ebfcad7e-fea3-4a10-afb2-145528d79d3d">4,759</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDMtMy0xLTEtNzg2MDg_f5c8515e-16f4-462b-96c0-6e8c77def2d6">19,205</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDMtNS0xLTEtNzg2MDg_0804e0bc-2e20-45b7-94c2-1bbe22ef9693">159,309</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents at beginning of year</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDQtMS0xLTEtNzg2MDg_5158f070-5f93-4579-bcb7-1c40396ce203">12,849</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDQtMy0xLTEtNzg2MDg_d73cd7df-9a71-45ec-bedd-80cc6b623d29">32,054</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDQtNS0xLTEtNzg2MDg_9aa25dcd-9484-4758-864a-fcee9daf1aa2">191,363</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents at end of year</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDUtMS0xLTEtNzg2MDg_488a260a-398b-495d-b2c6-41882f17e815">17,608</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDUtMy0xLTEtNzg2MDg_4c17c525-0dad-4635-bcf7-ea9149f26448">12,849</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDUtNS0xLTEtNzg2MDg_5e6f6005-0780-4b84-9abf-fbb196ad5b49">32,054</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:17pt;margin-top:12pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to consolidated financial statements.</span></div><div style="height:54pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">40</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_82"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GIBRALTAR INDUSTRIES, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF STOCKHOLDERS&#8217; EQUITY</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands)</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:23.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.478%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.110%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.087%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.765%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.478%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.379%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.044%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:33pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Common Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Additional<br/>Paid-In Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Retained Earnings</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Accumulated<br/>Other<br/>Comprehensive<br/>(Loss) Income</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Treasury Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total<br/>Stockholders&#8217; Equity</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Balance at December 31, 2019</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1f2f9cce6699404a833413104919ce4e_I20191231" decimals="-3" name="us-gaap:SharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xLTEtMS03ODYwOA_3d428ff5-a96d-4d85-85ec-c7186f6943a5">33,192</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1f2f9cce6699404a833413104919ce4e_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0zLTEtMS03ODYwOA_d9f92a1f-d5a2-499c-8a70-1e73419535cd">332</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie3983509898c478e9a8bbecfe502ed64_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi01LTEtMS03ODYwOA_b1daf794-def4-441e-a45e-1119fae1ae9f">295,582</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5122901a55b04dbfae33f1597b75c66b_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi03LTEtMS03ODYwOA_bc1790e6-9f44-4f07-9037-6537081dd146">405,668</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i123074e2cd1c4e7186ee79d3e7db5e8f_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi05LTEtMS03ODYwOA_fa52d035-0cff-49ca-bf01-74e0901a8808">5,391</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ie30e8dc0ac464faea642c432df7aef2f_I20191231" decimals="-3" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xMS0xLTEtNzg2MDg_0e40797d-9494-41b2-b348-0bcd8820512d">906</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie30e8dc0ac464faea642c432df7aef2f_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xMy0xLTEtNzg2MDg_0e35dc66-82a4-4ad3-b419-7363d883245e">22,227</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xNS0xLTEtNzg2MDg_1f828309-745c-4202-9bde-62e7410e2eae">673,964</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7e6fbd0487c147e2a4c30cd05cb44d5b_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMy03LTEtMS03ODYwOA_24423d67-2e15-420e-820b-243f7bbff6d7">64,566</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMy0xNS0xLTEtNzg2MDg_03c116d1-5c4c-42ed-90f4-9dc613b4fb47">64,566</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifb0e745a89424ceb9337a1ba7911fd78_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNC05LTEtMS03ODYwOA_83663843-7e4c-4c76-a0eb-7e159e7289ac">3,301</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNC0xNS0xLTEtNzg2MDg_25494603-e06c-4604-91f7-9f2eaedf190a">3,301</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments, net of taxes of $<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNS0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOjRkMWE0YjdhNzYxYzRiNTliZjU5YWQyMGY0ZGE2MTA3Xzcw_f9f3606a-56e6-4695-aba7-8b930430a86a">116</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifb0e745a89424ceb9337a1ba7911fd78_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNS05LTEtMS03ODYwOA_ca2181d6-661c-49f8-be1e-c207ced05ee6">371</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNS0xNS0xLTEtNzg2MDg_e7ea47eb-f99d-4670-b4e1-8f35146262de">371</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Stock compensation expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNi01LTEtMS03ODYwOA_84a3bced-001a-43e6-87d2-eaf33f18e779">8,173</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNi0xNS0xLTEtNzg2MDg_649788c3-5f01-4619-a31e-07b4da3f2122">8,173</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Cumulative effect of accounting change</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i04634afcd3c9491d8d455f2951443e11_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNy03LTEtMS03ODYwOA_43536f07-ffc3-480a-a7ca-b826ab43a283">291</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6775c337c2142e0a43f6f90bd4d2fb5_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNy05LTEtMS03ODYwOA_b02b3487-069a-4ff7-be71-529a78cc7771">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic54cbd171db94113b88cdb36b6ee6d76_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNy0xNS0xLTEtNzg2MDg_bd4febaf-31d6-4042-af68-10895f54f301">291</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Net settlement of restricted stock units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231" decimals="-3" name="rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xLTEtMS03ODYwOA_2b1f7939-44c0-480b-89bc-a946b319f65a">296</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231" decimals="-3" sign="-" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0zLTEtMS03ODYwOA_9e3fbd77-e3f9-4877-94b0-1bb59541ef76">4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC01LTEtMS03ODYwOA_8812d521-2695-489f-a99e-55bba56a308c">4</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia63844f3738a4b5db27035bc3b17fbd0_D20200101-20201231" decimals="-3" name="rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xMS0xLTEtNzg2MDg_80041df7-184e-4aa4-9d3a-278b7a799e92">122</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia63844f3738a4b5db27035bc3b17fbd0_D20200101-20201231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xMy0xLTEtNzg2MDg_4b528b18-932a-4d6d-b67b-b6132904c121">6,656</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xNS0xLTEtNzg2MDg_2c71b6fb-bfbf-490f-8160-4e13e1d2bf13">6,656</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Awards of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOS0xLTEtMS03ODYwOA_40311181-374a-412c-a953-cee0614fe898">4</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Stock options exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTAtMS0xLTEtNzg2MDg_f3e6dfd2-1088-489e-8959-ea214d7d0ad5">76</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTAtNS0xLTEtNzg2MDg_f2eb5219-6eca-4866-96b7-b11233d86852">1,119</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTAtMTUtMS0xLTc4NjA4_fc225580-fb1c-4187-84b2-e8b4bd38ccac">1,119</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifbd110efb3794f18a6cc54166c3ba701_I20201231" decimals="-3" name="us-gaap:SharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMS0xLTEtNzg2MDg_36f0f330-11a2-4e10-97fa-712db034b839">33,568</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifbd110efb3794f18a6cc54166c3ba701_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMy0xLTEtNzg2MDg_f86ebe3b-ab96-4ea2-9ce8-a86443dc6c85">336</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic70acb87500f4a79946405a1f6a58999_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtNS0xLTEtNzg2MDg_ef77e9de-db2e-4204-bec3-979d2dc5a3c8">304,870</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i50e273bab9d543bc8f7e428b18676a56_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtNy0xLTEtNzg2MDg_5d210795-4f00-4d85-aafe-c8265ffb0b28">469,943</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5effa7766b414823a6b37abacb899a66_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtOS0xLTEtNzg2MDg_46177d46-32cd-4d37-86c1-c1522cfe7ea7">2,461</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i5e7a6b0d487c42e989ebef27fc419fc0_I20201231" decimals="-3" name="us-gaap:SharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMTEtMS0xLTc4NjA4_6cb6452a-2731-4ec9-925d-9bf5af1c26f4">1,028</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5e7a6b0d487c42e989ebef27fc419fc0_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMTMtMS0xLTc4NjA4_194b3cf6-b3ad-458d-97b4-18ad6f1e9ae6">28,883</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMTUtMS0xLTc4NjA4_481feb93-7560-4f85-b0c1-88208a5aa388">743,805</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7bc646f1a61c478c89b5f830797418fa_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTItNy0xLTEtNzg2MDg_3f162066-305d-44e6-a9b8-57933ddf33f6">75,629</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTItMTUtMS0xLTc4NjA4_8a85517b-e87f-4cef-8268-6f6689944f0a">75,629</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i24dc19df42dc4e49a91f11718670da8b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTMtOS0xLTEtNzg2MDg_a10aea8c-c088-491a-87bd-35e748921e96">2,512</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTMtMTUtMS0xLTc4NjA4_34c7ec07-dd4d-4659-a3c9-186ad117c3fe">2,512</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments, net of taxes of $<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjpkN2FjN2M4NzkxYmY0NTY4YjU4OTMxNzNjOTMxZTZjMV83MA_19fec171-71bf-4ae8-82e3-fad164e8f0d9"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjpkN2FjN2M4NzkxYmY0NTY4YjU4OTMxNzNjOTMxZTZjMV83MA_a0643f32-75ff-494a-a96a-2ce9354af97c">43</ix:nonFraction></ix:nonFraction></span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i24dc19df42dc4e49a91f11718670da8b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtOS0xLTEtNzg2MDg_6f6b2ef9-201e-4a0d-96e0-ae25641f7c42">136</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtMTUtMS0xLTc4NjA4_7531a0f9-e820-45e9-a42f-ca619ba78074">136</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Stock compensation expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTUtNS0xLTEtNzg2MDg_1e8affee-0a61-406d-a7a1-0032130b7f7f">8,652</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTUtMTUtMS0xLTc4NjA4_10522cc5-501a-40b7-b240-f17d55a0a25a">8,652</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Net settlement of restricted stock units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231" decimals="-3" name="rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMS0xLTEtNzg2MDg_c0667e74-723f-47d9-ba93-6b3407a989d7">192</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231" decimals="-3" sign="-" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMy0xLTEtNzg2MDg_088fcbc0-38ea-45d5-8689-c0c91c03d3f9">2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctNS0xLTEtNzg2MDg_6724b18c-8ea4-48d5-b2e0-3edd1ca6d442">2</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1225272475884cc6bc34be3f6a6e3a4f_D20210101-20211231" decimals="-3" name="rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMTEtMS0xLTc4NjA4_6d72e8b0-580e-42f5-b00e-f207f112ab6e">79</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1225272475884cc6bc34be3f6a6e3a4f_D20210101-20211231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMTMtMS0xLTc4NjA4_455e5460-5222-4647-95eb-969e18e0ea02">6,497</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMTUtMS0xLTc4NjA4_23e17bef-00bd-41b6-9239-66fb800d4501">6,497</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Awards of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTgtMS0xLTEtNzg2MDg_54ef885a-9661-4aa6-b813-d75c8253e571">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Stock options exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTktMS0xLTEtNzg2MDg_50018e81-5dad-4490-bc27-6ea858e22e0f">36</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTktNS0xLTEtNzg2MDg_774dd584-e1cf-4fb6-bccf-ea93a7f7f876">1,021</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTktMTUtMS0xLTc4NjA4_01528564-b8e8-447f-8906-8e34199347f7">1,021</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1191b15085d24a4090a0e6cf7f8a8754_I20211231" decimals="-3" name="us-gaap:SharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMS0xLTEtNzg2MDg_da6b9b02-9893-4d83-a92a-a47d16c8dcc1">33,799</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1191b15085d24a4090a0e6cf7f8a8754_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMy0xLTEtNzg2MDg_56aba72a-f7d4-4d34-9df4-e548919a8a08">338</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if4c54cc99046494ba560c270ccbc3879_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtNS0xLTEtNzg2MDg_199be890-98a3-4125-bcce-9c4989bbdeea">314,541</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9e70b63e924649afa96b3f3565e42b26_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtNy0xLTEtNzg2MDg_64e47817-c296-4237-82e7-b390399f61aa">545,572</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i83385c33271c449185e1f48b7c32fcc0_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtOS0xLTEtNzg2MDg_1729c656-5c4c-4711-ac22-5e05c304f108">187</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i3d2b4833bc724d81af84c2be116ddc36_I20211231" decimals="-3" name="us-gaap:SharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMTEtMS0xLTc4NjA4_9a82e4cb-9220-451a-b08c-a945ea51f6bb">1,107</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3d2b4833bc724d81af84c2be116ddc36_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMTMtMS0xLTc4NjA4_56642311-d044-4e04-a305-4b228b94d19a">35,380</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMTUtMS0xLTc4NjA4_cefc1adf-fcc1-4112-bab6-9c1d3ea79113">825,258</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjEtNy0xLTEtNzg2MDg_200bead6-e53b-4ab6-946e-d81d9246a0b6"><ix:nonFraction unitRef="usd" contextRef="i60c7ad643ee24947a0507767fd7af229_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjEtNy0xLTEtNzg2MDg_b93e06df-b4c2-4030-b2cf-7e35d020f837">82,406</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjEtMTUtMS0xLTc4NjA4_69fe30a2-f792-47e3-80a0-fd88300adc07">82,406</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie361ac8943624af59a34da5baada933f_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjItOS0xLTEtNzg2MDg_e8f92ffd-660f-434b-aacd-899cc76c99d7">5,022</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjItMTUtMS0xLTc4NjA4_bfc13213-d3e4-4ede-b2dd-ac14ecbffb0f">5,022</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments, net of taxes of $<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo3MWIxZDhiMzUzZjk0YmUzOGFiZGIyNzZmZjk5NGZhNF83MA_09438386-7251-4533-a6cb-492561c59098"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo3MWIxZDhiMzUzZjk0YmUzOGFiZGIyNzZmZjk5NGZhNF83MA_95104e0b-6155-4a40-ba9c-83db25a87cdf">449</ix:nonFraction></ix:nonFraction></span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie361ac8943624af59a34da5baada933f_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtOS0xLTEtNzg2MDg_e03aad41-69a8-44d8-8cbf-53e82cd6769d">1,403</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtMTUtMS0xLTc4NjA4_87048133-cc10-4564-9b3d-16316d70243b">1,403</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Stock compensation expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i42f7d8305bf74256aa08ab7219dcd4af_D20220101-20221231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjQtNS0xLTEtNzg2MDg_ceead469-8fec-48df-a4cc-b119a83fa29f">8,334</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjQtMTUtMS0xLTc4NjA4_474cd426-c810-4e4f-b9cd-e21856068034">8,334</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Net settlement of restricted stock units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231" decimals="-3" name="rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMS0xLTEtNzg2MDg_570d591f-76db-4acc-b272-44f579d2002d">245</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231" decimals="-3" sign="-" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMy0xLTEtNzg2MDg_1f23b696-c7b2-4b0c-bf4b-d4498603ca2c">2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i42f7d8305bf74256aa08ab7219dcd4af_D20220101-20221231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtNS0xLTEtNzg2MDg_af439fc3-5b1b-41bc-b676-fb2973f76102">2</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231" decimals="-3" name="rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMTEtMS0xLTc4NjA4_f6145241-3793-47f4-9447-29a98e93e59d">95</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMTMtMS0xLTc4NjA4_00772ec6-d111-41a5-bb71-54dd2690d45b">4,404</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMTUtMS0xLTc4NjA4_8f61f402-d501-46a2-a7e6-1e86bfa35185">4,404</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Awards of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjctMS0xLTEtNzg2MDg_faab3217-f838-4c61-b9f1-f0a53c9751f0">16</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%">Common stock repurchased under stock repurchase program</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:StockRepurchasedDuringPeriodShares" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjgtMTEtMS0xLTc4NjA4_1b7db378-8470-4b03-a843-e4b3d9322c52">1,997</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjgtMTMtMS0xLTc4NjA4_1d26c5a6-be4c-445a-8d75-cf88cd68209e">85,876</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjgtMTUtMS0xLTc4NjA4_7c87931b-35ca-4ecb-9f6b-1e016b3407f0">85,876</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icf0b08651dde4f8d94a7bde9dbce6a9a_I20221231" decimals="-3" name="us-gaap:SharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMS0xLTEtNzg2MDg_a2155f72-bbee-4553-a9df-c7cabc2bd369">34,060</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icf0b08651dde4f8d94a7bde9dbce6a9a_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMy0xLTEtNzg2MDg_d5109f81-affd-4163-b19f-234349c3f5a2">340</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i976e866e5d78415f82e96b8a1a8f8bba_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktNS0xLTEtNzg2MDg_70ec3541-8db5-4899-8b48-f4126702677c">322,873</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8189174c2d4405383f05c32cc8c5f9d_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktNy0xLTEtNzg2MDg_e19a3b18-ecd1-4c11-8fb0-65e74fe29fc0">627,978</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iac9cad15749148fb8d6bcd2f6790d617_I20221231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktOS0xLTEtNzg2MDg_e432b1be-5618-44dc-93c5-91684d6f11c5">3,432</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if033831b782e49ff955d964e0bb5299b_I20221231" decimals="-3" name="us-gaap:SharesIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMTEtMS0xLTc4NjA4_b1359a95-3702-46bb-8d59-8130d2203a97">3,199</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if033831b782e49ff955d964e0bb5299b_I20221231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMTMtMS0xLTc4NjA4_801b01da-d994-4e08-bca4-3021e76e0cc1">125,660</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMTUtMS0xLTc4NjA4_54c34213-1685-4578-8ba5-923e59af9a93">822,099</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div style="margin-bottom:17pt;margin-top:17pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to consolidated financial statements.</span></div><div style="height:54pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">41</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_85"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GIBRALTAR INDUSTRIES, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_88"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(1) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNzM_5e382d16-80bd-461a-9ce6-fca32b18a3f9" continuedAt="ie087946c7d174606940fa0617cfd5d00" escape="true">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</ix:nonNumeric></span></div><ix:continuation id="ie087946c7d174606940fa0617cfd5d00" continuedAt="i783b661bdccf4b07ab7e367681d92af3"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ConsolidationPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5OTQ_45e77824-2447-48e3-9eb6-8f51409de8f7" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Principles of consolidation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements include the accounts of Gibraltar Industries, Inc. and subsidiaries (the "Company"). All intercompany accounts and transactions have been eliminated in consolidation.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:UseOfEstimates" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5OTk_30b3a382-20b3-435a-b156-6c1f2da90b7f" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Use of estimates</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of the consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the amounts reported in the consolidated financial statements and accompanying notes. Actual results could differ from those estimates due to uncertainty in the current economic environment.</span></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:SegmentReportingPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjM_7c000a9f-c2ae-42d8-abc7-2d25f85bfd76" continuedAt="i6acd765cc2944ebda5cd350217ca3a75" escape="true">Segment Reporting</ix:nonNumeric></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i6acd765cc2944ebda5cd350217ca3a75">The Company has <ix:nonFraction unitRef="segment" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="0" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfNzQx_a302cace-e7b9-4cf3-aaa4-e97231c339f6">four</ix:nonFraction> reportable segments: Renewables, Residential, Agtech and Infrastructure. In 2021, the Company's former Renewable Energy and Conservation segment was divided into <ix:nonFraction unitRef="segment" contextRef="i27908b60c3e84604a696a0da2c41f62e_D20220101-20221231" decimals="0" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTA2_9002d11d-8d66-4444-a637-2389eeed4b13">two</ix:nonFraction> segments, Renewables and Agtech.</ix:continuation> For further disclosure regarding the Company's reportable segments, refer to Note 20 "Segment Information."</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNTQ_e1a00784-d6c4-40c9-b6b8-74586e42d9af" continuedAt="id7606efdb42842779bda88938283acc4" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Revenue recognition</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue is recognized when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration the Company expects to be entitled in exchange for transferring those products or services.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance obligations satisfied at a point in time and significant judgments</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue from contracts with customers is recognized when the Company transfers control of the promised product at a point in time, which is determined when the customer has legal title and the significant risks and rewards of ownership of the asset, and the Company has a present right to payment for the product.  The Company allocates the transaction price, which is generally the quoted price per terms of the contract and the consideration the Company expects to receive, to each performance obligation.  These products are generally sold with rights of return and these contracts may provide other credits or incentives, which are accounted for as variable consideration.  Sales returns, allowances, and customer incentives, including rebates, are treated as reductions to the sales transaction price and based largely on an assessment of all information (i.e., historical, current and forecasted) that is reasonably available to the Company, and estimated at contract inception and updated at the end of each reporting period as additional information becomes available.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance obligations satisfied over time and significant judgments</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For a contract to construct an asset that the customer controls as it is being created or enhanced, or a promise to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment, the Company recognizes revenue over time.  For the contracts to construct a certain asset, the Company determines that the customer controls the asset while it is being constructed.  For the contracts for products that have no alternative use and for which the Company has an enforceable right to payment, the Company identifies these products as products that are not a standard inventory item or the Company cannot readily direct the product to another customer for use without incurring a significant economic loss, or significant costs to rework the product.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company determines the transaction price for each contract based on the consideration the Company expects to receive for the promised products and services under the entire contract, which is generally the stated contract price based on an expected cost plus a margin.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the above contracts with customers with respect to which the Company satisfies a performance obligation over time, the Company recognizes revenue based on the extent of progress towards completion of the performance obligation using the cost-to-cost measure of progress.  Under the cost-to-cost measure of progress, the extent of progress toward completion is measured based on the ratio of costs incurred to date to the total estimated costs at completion of the performance obligation.  Revenues are recognized proportionally as costs are incurred.  Costs to fulfill a contract include all direct costs related to contract performance.  Selling and administrative expenses are </span></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">42</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i783b661bdccf4b07ab7e367681d92af3" continuedAt="iec871a31ba6b46e08da37cfb918c12db"><ix:continuation id="id7606efdb42842779bda88938283acc4"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">charged to operations as incurred.  Provision for loss on an uncompleted performance obligation is recognized in the period in which such loss is determined.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company regularly reviews the progress under the cost-to-cost method and any adjustments are recognized as necessary.  Changes in estimates are recognized as they become known using the cumulative catch-up basis.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also recognizes revenues from services contracts over time.  The Company recognizes revenue over time during the term of the agreement as the customer is simultaneously receiving and consuming the benefits provided throughout the Company's performance. Therefore, due to control transferring over time, the Company recognizes revenue on a straight-line basis throughout the contract period.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract assets and contract liabilities</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets primarily represents revenue recognized for performance obligations that have been satisfied but for which amounts receivable have not been billed.  These are included as current assets and included within accounts receivable on the Company's consolidated balance sheets.  Contract liabilities include payments received from customers in advance of the satisfaction of performance obligations for a contract.  The Company does not consider contract advances to be significant financing components as the intent of these payments in advance are for reasons other than providing a significant financing benefit and are customary in the Company's industry.  Unearned revenue relates to payments received in advance of performance under the contract and is recognized when the Company performs under the contract. Unearned revenue is presented within accrued expenses in the Company's consolidated balance sheets.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Costs to obtain a contract with a customer</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognizes an asset for the incremental costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year.  If the amortization period of the asset is one year or less, the Company recognizes the incremental costs of obtaining a contract as an expense when incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.</span></div></ix:continuation><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMzk_8c832f3d-66c9-4118-aa39-e146afbb15c0" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Cash and cash equivalents</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All highly liquid investments with a maturity of three months or less are considered cash equivalents.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:TradeAndOtherAccountsReceivablePolicy" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNjY_3e7755c6-6437-4c43-8221-ae2160aabac4" continuedAt="i45e4f8283f0d4b5eb34441df0b0ee703" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounts receivable and allowance for doubtful accounts and contract assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable are composed of trade and contract receivables recorded at either the invoiced amount or costs in excess of billings, are expected to be collected within one year, and do not bear interest.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s expected loss allowance methodology for accounts receivable and costs in excess of billings (collectively "accounts receivable") is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' accounts receivables.  The Company is exposed to credit losses through sales of products and services.  Due to the short-term nature of such accounts receivable, the estimated amount of accounts receivable that may not be collected is based on aging of the accounts receivable balances.  Additionally, specific allowance amounts are established to record the appropriate provision for customers that no longer share risk characteristics similar with other accounts receivable. The Company&#8217;s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions.  Balances are written off when determined to be u</span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ncollectible </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">after all means of collection have been exhausted and the potential for recovery is considered remote.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates are used to determine the allowance. These estimates are based on assessment of anticipated payment and all other historical, current and future information that is reasonably available.</span></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">43</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="iec871a31ba6b46e08da37cfb918c12db" continuedAt="i4d1cd5e35651488d8d65019e87146bad"><ix:continuation id="i45e4f8283f0d4b5eb34441df0b0ee703" continuedAt="i6c3baed068fa4208b704f75fa95c08cb"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMDA_6fbabcc4-7a43-4841-8e2d-4226f4d7308a" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes activity recorded within the allowance for doubtful accounts and contract assets balances for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:62.788%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.449%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.449%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.454%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMS0xLTEtMS03ODYwOA_2f872d36-80d8-44e5-bd67-e0c48ea71770">3,738</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMS0zLTEtMS03ODYwOA_7e2d2842-7a1b-4c35-881b-c91e1d5d16d4">3,529</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMS01LTEtMS03ODYwOA_632a6f33-507c-4101-890f-7c28becfb1e9">5,951</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adoption of ASU 2016-13, cumulative-effect adjustment to retained earnings at January 1, 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idbe6a8124fc44a00a6467aef510ebbfd_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMi0xLTEtMS03ODYwOA_1489ab3c-b957-4d89-b019-6587f45a7faa">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie54da7396361489495cbe337cf00b779_I20201231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMi0zLTEtMS03ODYwOA_6c933886-b627-48b9-a0ca-c6bbf8537c70">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic54cbd171db94113b88cdb36b6ee6d76_I20191231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMi01LTEtMS03ODYwOA_dd4459bc-8bcb-479b-ad00-20d466323a02">385</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Bad debt expense, net of recoveries</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMy0xLTEtMS03ODYwOA_f8cf5918-09d8-42db-a76f-f99d7644da97">1,221</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMy0zLTEtMS03ODYwOA_2125e04e-6693-418f-8231-d54e496c35d9">898</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMy01LTEtMS03ODYwOA_fcecdf73-60cc-4d05-a9ce-5cf25d60d493">1,321</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts written off against allowance and other adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNC0xLTEtMS03ODYwOA_56975d15-4b0e-40bb-a746-740926d5619f">1,213</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNC0zLTEtMS03ODYwOA_cb1fd7c5-f36f-4393-be39-d608e43c9055">689</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNC01LTEtMS03ODYwOA_65f43a63-53c0-40f6-900c-f2e4061bf259">4,128</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Ending balance</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNS0xLTEtMS03ODYwOA_b5cb4350-0326-4d48-bc55-14eeac03c084">3,746</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNS0zLTEtMS03ODYwOA_f8e6f7cf-7f7e-4210-a9bb-317ceb601af3">3,738</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNS01LTEtMS03ODYwOA_34628815-432f-4e9c-8c3b-07cebe86b379">3,529</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="margin-top:12pt;text-align:justify"><ix:continuation id="i6c3baed068fa4208b704f75fa95c08cb" continuedAt="ifa1c86e8799446aca746c9c3423dc970"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Concentrations of credit risk in accounts receivable are limited to those from significant customers that are believed to be financially sound. As of December&#160;31, 2022 and 2021, the Company's most significant customer is a home improvement retailer. The</span><span style="color:#291bff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></ix:continuation><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ifa1c86e8799446aca746c9c3423dc970">home improvement retailer purchases from the Residential segment.</ix:continuation>  Accounts receivable as a percentage of consolidated accounts receivable from the home improvement retailer was <ix:nonFraction unitRef="number" contextRef="i1ea1ab49276343edb9a5e6c56f0e61e8_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfODkzNw_e44f5438-3bbc-46c7-ae70-ad9614710906">14</ix:nonFraction>% as of December&#160;31, 2022 and 2021.  Net sales to the home improvement retailer as a percentage of consolidated net sales were <ix:nonFraction unitRef="number" contextRef="i98e1c3b3185f4ddcbe64b5c44936ee08_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTA3OQ_4c4421a0-564b-46bc-9872-e7e669693f18">14</ix:nonFraction>%, <ix:nonFraction unitRef="number" contextRef="i95ff1080bfe94f89a11b0c8c5f16d8b6_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMzI5ODUzNDkwMjAwMw_d006f0a6-18b5-41cd-8a46-2b50e61230cf">13</ix:nonFraction>%, and <ix:nonFraction unitRef="number" contextRef="icf48193410cf43ef90a3483df0c17674_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMzI5ODUzNDkwMjA1Mg_22150a56-9576-4ac8-90d8-02ad614cb1ec">14</ix:nonFraction>%  during the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:InventoryPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNTA_08c4c193-bfb5-446b-9d79-3d9f1c331584" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Inventories</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are valued at the lower of cost, determined using the first-in, first-out method, or net realizable value. Shipping and handling costs are recognized as a component of cost of sales.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNzQ_f721999e-b2c9-499e-8b83-d3a534312338" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Property, plant, and equipment</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant, and equipment are stated at cost and depreciated over their estimated useful lives using the straight-line method. Interest is capitalized in connection with construction of qualified assets. Expenditures that exceed an established dollar threshold and that extend the useful lives of assets are capitalized, while repair and maintenance costs are expensed as incurred. The estimated useful lives of land improvements, buildings, and building improvements are <ix:nonNumeric contextRef="i189fd663bed442f5bd1e0f0305c11730_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTg4Nw_07ff9323-6836-42cd-bd97-07a2148f25be">15</ix:nonNumeric> to <ix:nonNumeric contextRef="if7710fe2fac7428aa8d7508ca7dc9997_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTg5Mw_4179835c-3e87-4c4e-95df-3f73d29e01d2">40</ix:nonNumeric> years, while the estimated useful lives for machinery and equipment are <ix:nonNumeric contextRef="ib56947beeb194a5a908e873e0702d475_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTk2OA_70a881b7-d7c7-4b6b-801b-98ea2031ae2e">3</ix:nonNumeric> to <ix:nonNumeric contextRef="ied8c39d5f0ff4f1e977a523a36165cba_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTk3NA_7bf9ffea-ab67-4c21-b196-7ff450c9addc">20</ix:nonNumeric> years.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMDQ_da5bca11-79c0-4c2f-b5d5-63edc124e8e8" continuedAt="i5bd00bec640441b293a1749adde3fca9" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below sets forth the depreciation expense recognized during the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOjUxNDFjZjUxY2ExZjQxMDY5ODU5MmFiMzg0ZTZhMzk1L3RhYmxlcmFuZ2U6NTE0MWNmNTFjYTFmNDEwNjk4NTkyYWIzODRlNmEzOTVfMS0xLTEtMS03ODYwOA_89699173-d895-4946-be66-af0c1ce3d3ef">14,583</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOjUxNDFjZjUxY2ExZjQxMDY5ODU5MmFiMzg0ZTZhMzk1L3RhYmxlcmFuZ2U6NTE0MWNmNTFjYTFmNDEwNjk4NTkyYWIzODRlNmEzOTVfMS0zLTEtMS03ODYwOA_0eb08d06-3a03-4b79-acda-32a855255958">13,110</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOjUxNDFjZjUxY2ExZjQxMDY5ODU5MmFiMzg0ZTZhMzk1L3RhYmxlcmFuZ2U6NTE0MWNmNTFjYTFmNDEwNjk4NTkyYWIzODRlNmEzOTVfMS01LTEtMS03ODYwOA_8cc9b179-720d-40b9-93de-8a0bb5945e35">11,252</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:BusinessCombinationsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5ODM_73f0abdc-90b0-46aa-89fa-48dbab4e82ce" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Acquisition related assets and liabilities</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounting for the acquisition of a business as a purchase transaction requires an allocation of the purchase price to the assets acquired and the liabilities assumed in the transaction at their respective estimated fair values. The most complex estimations of individual fair values are those involving long-lived assets, such as property, plant, and equipment and intangible assets. The Company uses all available information to make these fair value determinations and engages independent valuation specialists to assist in the fair value determination of the acquired long-lived assets.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjA_7b689d55-191a-40d7-87ca-1581958175e9" continuedAt="i31bacc46292f4df697e1ba59e45d9678" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Goodwill and other intangible assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company tests goodwill for impairment at the reporting unit level on an annual basis at October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of a reporting unit could be below its carrying value. The reporting units are at the component level, or one level below the operating segment level. Goodwill is assigned to each reporting unit as of the date the reporting unit is acquired.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company may elect to perform a qualitative assessment that considers economic, industry and company-specific factors for some or all of the Company's selected reporting units. If, after completing the assessment, it is determined that it is more likely than not that the fair value of a reporting unit is less than its carrying value, the Company proceeds to a quantitative test. The Company may also elect to perform a quantitative test instead of a qualitative test for any or all of the Company's reporting units.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The quantitative impairment test consists of comparing the fair value of a reporting unit, determined using two valuation techniques, to its carrying value. If the carrying value of the reporting unit exceeds its fair value, goodwill is </span></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">44</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i4d1cd5e35651488d8d65019e87146bad" continuedAt="i5a9ea78edc8c464f9e583da106f9b7c5"><ix:continuation id="i31bacc46292f4df697e1ba59e45d9678"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">considered impaired, and a loss measured by the excess of the carrying value of the reporting unit over the fair value of the reporting unit must be recorded.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also tests its indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of an indefinite-lived intangible asset could be below its carrying value. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, determined using discounted cash flows on a relief-from-royalty basis, with its carrying amount.  An impairment loss would be recognized for the carrying amount in excess of its fair value.  Acquired identifiable intangible assets are recorded at cost. Identifiable intangible assets with finite useful lives are amortized over their estimated useful lives. For additional disclosure of the Company's goodwill and other intangible assets refer to Note 7 "Goodwill and Related Intangible Assets."</span></div></ix:continuation><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjc_cfbec221-98dc-46dd-a148-43ca220239d0" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Impairment of long-lived assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-lived assets, including acquired identifiable intangible assets with finite useful lives, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of those assets may not be recoverable.  In specific situations, when the Company has selected individual assets to be sold or scrapped, the Company obtains market value data for those specific assets and measures and records the impairment loss based on such data. Otherwise, the Company uses undiscounted cash flows to determine whether impairment exists and measures any impairment loss by approximating fair value using acceptable valuation techniques, including discounted cash flow models and third-party appraisals. For additional disclosure on impairment of the Company's long-lived assets refer to Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments."</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:LesseeLeasesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNTY_a3dd0da2-d167-4d6b-9807-2088abbfaeea" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company determines if an agreement is, or contains, a lease at the inception of the agreement. At lease commencement, the Company recognizes a right-of-use asset and a lease liability for leases with terms greater than twelve months.  The initial lease liability is recognized at the present value of remaining lease payments over the lease term.  Leases with an initial term of twelve months or less are not recorded on the Company's consolidated balance sheets.  The Company recognizes lease expense for operating leases on a straight-line basis over the lease term.  The Company combines lease and non-lease components, such as common area maintenance costs, in calculating the related asset and lease liabilities for all underlying asset groups.  Operating lease cost is included in income from operations and includes short-term leases and variable lease costs which are immaterial.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:DeferredChargesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjg_82ca2c6a-af33-4649-9f1c-9137b89dcc59" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Deferred charges</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred charges associated with initial costs incurred to enter into new debt arrangements are included as a component of long-term debt and are amortized as a part of interest expense over the terms of the associated debt agreements.</span></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:AdvertisingCostsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5NzU_159f1167-eb29-4997-9fae-ffb63c90fe85" continuedAt="i1142ec28b804479095f3b573e69ce8eb" escape="true">Advertising</ix:nonNumeric></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i1142ec28b804479095f3b573e69ce8eb">The Company expenses advertising and marketing costs as incurred.</ix:continuation> For the years ended December&#160;31, 2022, 2021 and 2020, advertising and marketing costs were $<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-5" name="us-gaap:AdvertisingExpense" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTUzMDk_a43e54be-49d0-4e1c-8efc-0215e3f98615">10.9</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-5" name="us-gaap:AdvertisingExpense" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTUzMjE_73cf26be-5212-43bc-8d0d-1fa1ad9502fa">8.0</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-5" name="us-gaap:AdvertisingExpense" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTUzMzc_b81b28c4-3d5b-4e3d-a92d-9bfe23019dfa">7.2</ix:nonFraction> million, respectively.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwODI_31fefc4a-a87a-4632-b528-926fd58813b2" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Foreign currency transactions and translation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The assets and liabilities of the Company&#8217;s foreign subsidiaries are translated into U.S. dollars at the rate of exchange in effect at the balance sheet date. Income and expense items are translated at the average exchange rates prevailing during the period.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:IncomeTaxPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5ODA_7c17155f-20d6-4e36-82b2-ae7c36c74454" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Income taxes</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes is determined using the asset and liability approach. Under this approach, deferred income taxes represent the expected future tax consequences of temporary differences between the carrying amounts and tax basis of assets and liabilities. The Company records a valuation allowance to reduce deferred tax assets when uncertainty exists regarding their realization.</span></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">45</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i5a9ea78edc8c464f9e583da106f9b7c5"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwOTA_24689fbc-22e6-46d7-9919-35827725c05c" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Equity-based compensation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company measures the cost of equity-based compensation based on grant date fair value and recognizes the cost over the period in which the employee is required to provide service in exchange for the award reduced by forfeitures. Equity-based compensation consists of grants of stock options, deferred stock units, common stock, restricted stock units, and performance stock units. Equity-based compensation expense is included as a component of selling, general, and administrative expenses.</span></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMzQ_c300e6b8-051c-4f02-99ca-8784b929a801" escape="true">Recent accounting pronouncements</ix:nonNumeric></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company considers the applicability and impact of ASUs, and ASUs effective in or after 2022, respectively, were assessed and determined to be either not applicable, or had or are expected to have minimal impact on the Company's consolidated financial statements and related disclosures.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_91"></div><div style="padding-left:22.5pt;text-indent:-22.5pt"><span><br/></span></div><div style="padding-left:22.5pt;text-indent:-22.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(2)  <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RleHRyZWdpb246YjgwMjVlYWEyYzUyNDBlODliMTkyMWU3NTFhYTE5MjFfMjA1_760a542c-8acf-4275-b12d-c92ce11131d9" continuedAt="i5e76f621428f4899b9cf4c48a4f70e8e" escape="true">ACCOUNTS RECEIVABLE, NET</ix:nonNumeric></span></div><ix:continuation id="i5e76f621428f4899b9cf4c48a4f70e8e"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RleHRyZWdpb246YjgwMjVlYWEyYzUyNDBlODliMTkyMWU3NTFhYTE5MjFfMjAy_059ab67d-c989-4eb6-a389-759cfa736f77" escape="true"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable at December 31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:55.938%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.014%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.015%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts receivable</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccountsReceivableGrossCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMS0xLTEtMS03ODYwOA_ab852687-845d-49e7-a07c-2604397dc065">179,170</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccountsReceivableGrossCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMS0zLTEtMS03ODYwOA_d022c6e3-13d8-4a12-80a7-0029577e0174">185,745</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs in excess of billings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerAssetNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMi0xLTEtMS03ODYwOA_38cd0639-aa78-4303-8f0d-5418677369ba"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:UnbilledContractsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMi0xLTEtMS03ODYwOA_e0edf989-2ba2-4c6d-9633-e34c8a53b98f">41,732</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:UnbilledContractsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMi0zLTEtMS03ODYwOA_45461da6-863b-4b32-becc-c81158518950">54,437</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total accounts receivables</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="rock:ContractsReceivableGrossCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMy0xLTEtMS03ODYwOA_05c7e8cf-c9bb-4d65-b690-96049745652d">220,902</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="rock:ContractsReceivableGrossCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMy0zLTEtMS03ODYwOA_7c6213c8-135b-4b43-a749-daf0ab46eb7f">240,182</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNC0xLTEtMS03ODYwOA_357bea2d-4ef4-4d6e-8c50-716234222f51">3,746</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNC0zLTEtMS03ODYwOA_45b0f400-bceb-4bb5-9470-3cbc96387887">3,738</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNS0xLTEtMS03ODYwOA_ecfc7207-0052-4230-9ade-ec3ac8288f66">217,156</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNS0zLTEtMS03ODYwOA_cd759f3f-1ad0-461c-aecd-70cae486f8c3">236,444</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Refer to Note 3 "Revenue" concerning the Company's costs in excess of billings.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_94"></div><div style="padding-left:22.5pt;text-indent:-22.5pt"><span><br/></span></div><div style="padding-left:22.5pt;text-indent:-22.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(3)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjg4MA_371f5c7d-482d-48c7-ad16-711f5c146ce9" continuedAt="i41121c969ba5496d9486c0a96c12f30b" escape="true">REVENUE</ix:nonNumeric></span></div><ix:continuation id="i41121c969ba5496d9486c0a96c12f30b" continuedAt="if1fa658ad07a4da9a54057d5dc6caa2f"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Sales includes revenue from contracts with customers for designing, engineering, manufacturing and installation of solar racking systems; electrical balance of systems; roof and foundation ventilation products; centralized mail systems and electronic package solutions; retractable awnings; gutter guards; rain dispersion products; trims and flashings and other accessories; designing, engineering, manufacturing and installation of greenhouses; structural bearings; expansion joints; pavement sealant; elastomeric concrete; and bridge cable protection systems.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Refer to Note 20 "Segment Information" for additional information related to revenue recognized by timing of transfer of control by reportable segment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms and conditions vary by contract, although terms generally include a requirement of payment within a range from <ix:nonNumeric contextRef="ie9f0cf89203446ea80e9bc2562a71d2b_D20220101-20221231" name="rock:ContractWithCustomerContractPaymentTerms" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfODkx_07a39c48-77e6-4cbc-8b37-ede5094ddce5">30</ix:nonNumeric> to <ix:nonNumeric contextRef="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231" name="rock:ContractWithCustomerContractPaymentTerms" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfODk3_8850a042-7ddf-419d-896f-21102d2b8fb6">60</ix:nonNumeric> days, or in certain cases, up front deposits.  In circumstances where the timing of revenue recognition differs from the timing of invoicing, the Company has determined that the Company's contracts generally do not include a significant financing component. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from sales.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 2022, the Company's remaining performance obligations are part of contracts that have an original expected duration of <ix:nonNumeric contextRef="id42b3ba54fe5400f99720a70c62e6a75_I20221231" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTQxMA_71c24dd9-a65b-4b0c-ad2b-e3761d4f0395">one year</ix:nonNumeric> or less.  Additionally, as of December 31, 2022 and 2021, there were <ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="0" name="rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTQ4Mg_8b18a4ea-a7ee-4c67-b9de-31212ce411ac"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="0" name="rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTQ4Mg_faa4cbef-b126-4f01-8342-f3b8e155eb52">no</ix:nonFraction></ix:nonFraction> assets recognized related to incremental costs of obtaining a contract with a customer as the benefits of these costs are not expected to exceed <ix:nonNumeric contextRef="id42b3ba54fe5400f99720a70c62e6a75_I20221231" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTYzMA_6cabb79d-f0b1-4162-a5f9-5474d35175d9">one year</ix:nonNumeric>.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets consist of costs in excess of billings presented within accounts receivable in the Company's consolidated balance sheets. Contract liabilities consist of billings in excess of cost, classified as current liabilities, and unearned revenue, presented within accrued expenses, in the Company's consolidated balance sheets.  </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">46</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="if1fa658ad07a4da9a54057d5dc6caa2f"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the ending and beginning balances of costs in excess of billings, billings in excess of cost and unearned revenue, respectively, as of December 31 (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjg4Mg_88734953-0c9c-46c8-b225-e70ba1ef891f" escape="true"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:51.176%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.318%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.318%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.320%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs in excess of billings</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerAssetNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS0xLTEtMS03ODYwOA_38cd0639-aa78-4303-8f0d-5418677369ba"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:UnbilledContractsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS0xLTEtMS03ODYwOA_e0edf989-2ba2-4c6d-9633-e34c8a53b98f">41,732</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerAssetNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS0zLTEtMS03ODYwOA_36a77e0f-f7fb-496c-a2b6-32b299256481">54,437</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:ContractWithCustomerAssetNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS01LTEtMS03ODYwOA_d9f78179-2183-4d95-9ee4-574f36900f4a">26,915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billings in excess of cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i841c4b7ae582485d83be490f499f4416_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMi0xLTEtMS03ODYwOA_5fa5df20-ce61-4cc1-8e7b-e9ad615edb4c">35,017</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iafa9f88ca1a5425a9d9a2a3ab68bc2f5_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMi0zLTEtMS03ODYwOA_b65bd7ca-5687-4d6b-8d43-1bbd08228f86">46,711</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3a2270fdbe18406a99dc5af36308726a_I20201231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMi01LTEtMS03ODYwOA_3e7c53db-d116-42cd-a342-ba41a8b97b33">34,702</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unearned revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMy0xLTEtMS03ODYwOA_845f90d8-e42e-4912-8957-8152b5ce7eb7">4,572</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMy0zLTEtMS03ODYwOA_a28f8a00-e83c-4be6-a2fb-3b035cf0fe15">3,681</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMy01LTEtMS03ODYwOA_731e91d7-1721-4536-864c-4b542583d96c">21,325</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue recognized during the years ended December 31, 2022, 2021, and 2020 that was in contract liabilities at the beginning of the respective periods was $<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-5" name="us-gaap:ContractWithCustomerAssetReclassifiedToReceivable" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMzI5ODUzNDg4ODI3MA_6dd0621a-d7e9-4ea1-9184-b1b354c8535d">44.4</ix:nonFraction>&#160;million, $<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-5" name="us-gaap:ContractWithCustomerAssetReclassifiedToReceivable" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjMyNA_da2ab97a-b4a9-40f8-ae9c-36ee04bfff01">53.0</ix:nonFraction>&#160;million, and $<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-5" name="us-gaap:ContractWithCustomerAssetReclassifiedToReceivable" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjMyOA_13a61c76-5621-45e4-bb8e-57aa19e07249">57.8</ix:nonFraction>&#160;million, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The decreases in costs in excess of billings and billings in excess of cost as of December 31, 2022 compared to December 31, 2021, respectively, were primarily due to decline in volume in the Renewables and Agtech segments in 2022 compared to 2021. The increase in costs in excess of billings as of December 31, 2021 compared to December 31, 2020 was primarily due to the timing of the Company's right to invoice customers for performance satisfied by the Company for significant contracts in the Renewables and Agtech segments near the end of 2021.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_97"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(4) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:InventoryDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RleHRyZWdpb246ODg4N2NiZjJjMmE2NDQ3NGJiNjU3ZTg5ZjUwYmI2ZjBfOTAx_76e4ccf8-95aa-41a8-a5b7-2b33f6e8a63a" continuedAt="i1f786f3b470242c7a37e854fb8b9756a" escape="true">INVENTORIES</ix:nonNumeric></span></div><ix:continuation id="i1f786f3b470242c7a37e854fb8b9756a"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RleHRyZWdpb246ODg4N2NiZjJjMmE2NDQ3NGJiNjU3ZTg5ZjUwYmI2ZjBfODk3_47639960-193b-48aa-830f-ef88d6bf5d0d" escape="true"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:72.692%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw material</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMS0xLTEtMS03ODYwOA_c417beca-a35d-4f58-b4e3-92d3feef2035">111,187</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMS0zLTEtMS03ODYwOA_2a5232c2-5e75-46ef-a048-4588affcfaa3">135,558</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work-in-process</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryWorkInProcess" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMi0xLTEtMS03ODYwOA_74090182-dde9-4d07-927a-de002bc1c17c">17,944</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryWorkInProcess" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMi0zLTEtMS03ODYwOA_642c410f-b4bd-4ecc-80e3-d62fbcb55d43">5,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryFinishedGoods" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMy0xLTEtMS03ODYwOA_d60c2b7a-80c1-422a-a7c4-aef580283e06">47,523</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryFinishedGoods" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMy0zLTEtMS03ODYwOA_01c26064-a5cb-4639-991c-b42d1bee0272">39,256</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross inventory</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNC0xLTEtMS03ODYwOA_e718b86b-5de6-4461-afcc-6e10edb1db51">176,654</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNC0zLTEtMS03ODYwOA_6ead7651-7203-43f6-a7f7-77f3c4c67723">180,672</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less reserves</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNS0xLTEtMS03ODYwOA_6faed80e-7ac6-49d3-b6b5-8c3bbc12a7b6">6,294</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNS0zLTEtMS03ODYwOA_4ed2437f-4028-4d59-aba6-4b3bc72f2ba4">4,465</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNi0xLTEtMS03ODYwOA_c3fe8cda-a06e-4d85-8a78-ee19189448ed">170,360</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNi0zLTEtMS03ODYwOA_07af5c01-6b2c-4842-8a11-7654c8b49b12">176,207</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's gross inventory balances are reduced by reserves for excess, obsolete and slow moving inventory and estimates for determining net realizable value of the inventory that are reported on a net basis on the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Company's consolidated balance sheets.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:SummaryOfSlowMovingInventoryActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RleHRyZWdpb246ODg4N2NiZjJjMmE2NDQ3NGJiNjU3ZTg5ZjUwYmI2ZjBfODkw_f0137900-d0e5-4cb9-97c5-276dfe512cf9" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes activity recorded within the reserve for excess, obsolete and slow moving inventory for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMS0xLTEtMS03ODYwOA_b5cb963d-6bdf-4871-893d-eebddc54f437">4,400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMS0zLTEtMS03ODYwOA_bb0cb91b-f2aa-400a-bc28-d2e7ed0ee363">4,161</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMS01LTEtMS03ODYwOA_f40ffcb1-43b4-445d-bf58-f7b7bb0f8b94">3,463</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess, obsolete and slow moving inventory expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:InventoryValuationExcessObsoleteAndSlowMovingInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMi0xLTEtMS03ODYwOA_289c5312-e838-4c84-b36a-424ff59c3870">1,582</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="rock:InventoryValuationExcessObsoleteAndSlowMovingInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMi0zLTEtMS03ODYwOA_40b599a1-bdde-496d-b7c9-3e1e59744c31">215</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:InventoryValuationExcessObsoleteAndSlowMovingInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMi01LTEtMS03ODYwOA_a8f1fdc0-77fd-4bdb-b992-3570d7b88f80">355</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Scrapped inventory and other adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:InventoryValuationScrappedInventoryAndOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMy0xLTEtMS03ODYwOA_666657a3-2def-4600-b660-4e7c951d218c">197</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="rock:InventoryValuationScrappedInventoryAndOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMy0zLTEtMS03ODYwOA_f8009f65-423d-4719-86d6-8d9fa83ed205">24</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:InventoryValuationScrappedInventoryAndOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMy01LTEtMS03ODYwOA_6e92b8e5-ec2f-42b1-b585-5a0444755031">343</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfNC0xLTEtMS03ODYwOA_9beeecf8-fe96-4aef-88a8-3cd2035fa2c9">6,179</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfNC0zLTEtMS03ODYwOA_a6546464-5d03-4d1d-9c22-9a2c32f3b471">4,400</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfNC01LTEtMS03ODYwOA_1a1b902b-ed3f-419f-a039-ff8839ba9609">4,161</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">47</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_100"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(5) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90ZXh0cmVnaW9uOmQ1ZmE1MGEwYmI4NjQzNzQ5ZmIyMGE2NzM1Zjk3OGYxXzE1MQ_6f6057de-70be-4e1c-bcea-b1f6b41f0990" continuedAt="iba0dcfddfc6a4c909a1fdc7187db919e" escape="true">PROPERTY, PLANT, AND EQUIPMENT</ix:nonNumeric></span></div><ix:continuation id="i5bd00bec640441b293a1749adde3fca9"><ix:continuation id="iba0dcfddfc6a4c909a1fdc7187db919e"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of property, plant, and equipment at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:72.692%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land and land improvements</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LandAndLandImprovements" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzEtMS0xLTEtNzg2MDg_3de5620c-be64-4cf4-97d0-dc2758e4e7a9">4,704</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:LandAndLandImprovements" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzEtMy0xLTEtNzg2MDg_ac3c0159-6bf4-4ce7-a2a9-6a7d03295109">4,634</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Building and improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:BuildingsAndImprovementsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzItMS0xLTEtNzg2MDg_b385f597-da37-4789-a1fe-97975d17111f">43,416</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:BuildingsAndImprovementsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzItMy0xLTEtNzg2MDg_69335003-0b44-4a0d-92e8-8e09e8b556d9">42,526</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:MachineryAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzMtMS0xLTEtNzg2MDg_8b8d4d26-e0ab-416c-a90f-411dda556a3c">223,843</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:MachineryAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzMtMy0xLTEtNzg2MDg_08a9befc-8aa3-4d42-9154-958f00456d55">194,015</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ConstructionInProgressGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzQtMS0xLTEtNzg2MDg_b9ab93c4-9c2e-43c8-9d20-448588c0110d">13,065</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:ConstructionInProgressGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzQtMy0xLTEtNzg2MDg_a91f4b0e-8232-46b8-b6c4-b296cf0bede4">20,293</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, gross</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzUtMS0xLTEtNzg2MDg_97e9694d-23c3-4da6-ac04-c236d07e180b">285,028</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzUtMy0xLTEtNzg2MDg_fb4eaa63-1824-4d6d-9b18-b8e7abbde5b9">261,468</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzYtMS0xLTEtNzg2MDg_89f4844a-75ec-4c0a-8475-9b94f13510d7">175,444</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzYtMy0xLTEtNzg2MDg_d86d83f8-b93b-4f15-9f8b-d8d4a3efe476">164,583</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzctMS0xLTEtNzg2MDg_c9936547-8de6-47f2-94e4-f06ca44d1229">109,584</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzctMy0xLTEtNzg2MDg_7317108c-603d-4182-9add-74fe1c03a775">96,885</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation></ix:continuation><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_103"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(6) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzgxMDM_dae56b02-7370-4f37-aa1a-0959bb8eb34d" continuedAt="i7b34c6de88c94cb5b6d8c500cb7ff662" escape="true">ACQUISITIONS</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i7b34c6de88c94cb5b6d8c500cb7ff662" continuedAt="i2784ef370e1a40c7a553c9dd51da996b"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">2022 Acquisitions</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 22, 2022, the Company purchased all the issued and outstanding membership interests of Quality Aluminum Products ("QAP"), a manufacturer of aluminum and steel products including soffit, fascia, trim coil, rain carrying products and aluminum siding. The results of QAP have been included in the Company's consolidated financial results since the date of acquisition within the Company's Residential segment.  The preliminary purchase consideration for the acquisition of QAP was $<ix:nonFraction unitRef="usd" contextRef="ibd14b74b67ad4900b366da7049fabf98_D20220822-20220822" decimals="-5" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzU0OTc1NTgyNDQ2Mg_abb3e605-fad1-4b20-a093-04082b621530">52.1</ix:nonFraction>&#160;million, which includes a preliminary working capital adjustment and certain other adjustments provided for in the membership interest purchase agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase price for the acquisition was preliminarily allocated to the assets acquired and liabilities assumed based upon their respective fair values estimated as of the date of acquisition.  The Company has commenced the process to confirm the existence, condition, and completeness of the assets acquired and liabilities assumed to establish fair value of such assets and liabilities and to determine the amount of goodwill to be recognized as of the date of acquisition.  Due to the timing of the acquisition, the Company continues to gather information supporting the acquired assets and assumed liabilities.  Accordingly, all amounts recorded are provisional.  These provisional amounts are subject to change if new information is obtained concerning facts and circumstances that existed as of the acquisition date that, if known, would have affected the measurement of the amounts recognized as of that date.  The final determination of the fair value of certain assets and liabilities will be completed within a measurement period of up to one year from the date of acquisition.  The final values may also result in changes to depreciation and amortization expense related to certain assets such as property, plant, and equipment and acquired intangible assets.  The preliminary excess consideration was recorded as goodwill and approximated $<ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-5" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzU0OTc1NTgyNDQ5MA_47874af4-5bc4-4aee-8333-e30bd989b0cd">3.6</ix:nonFraction>&#160;million, all of which is deductible for tax purposes.  Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the domestic building products markets.  The final purchase price allocation will be completed no later than the third quarter of fiscal year 2023.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzIxOTkwMjMyNjk4NzI_a1b07612-47b1-4fda-a9e0-1584c74de9e0" continuedAt="i54ad08b24d0b40d6acd2ed57aab26773" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preliminary allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.011%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.789%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzAtMS0xLTEtODU3Nzg_fbec2959-8fde-448d-9dbe-6dac08ad4352">1,018</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-3" name="rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzEtMS0xLTEtODU3Nzg_4f6b17f1-bb61-4f8f-835b-70046c88afd5">23,759</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzItMS0xLTEtODU3Nzg_69ad9b8f-20b2-4559-8df4-757fd830cf81">8,486</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzMtMS0xLTEtODU3Nzg_cfedf5b5-ec38-4f36-a5c4-f8eef28f0429">14,700</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzQtMS0xLTEtODU3Nzg_f4b0e42b-5c50-4484-a045-277b01fb081d">1,813</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia53930dbdf4d433a9a1ee073b78ecc87_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzUtMS0xLTEtODU3Nzg_4d905294-b3a1-40aa-9fda-4c7c897306fa">1,295</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzYtMS0xLTEtODU3Nzg_800831ae-a256-45bf-a9c1-4c97d57e75bb">3,604</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzctMS0xLTEtODU3Nzg_39a39453-bd86-42e5-84ed-478f8c77556e">52,085</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">48</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i2784ef370e1a40c7a553c9dd51da996b" continuedAt="if2b9c3ff87e6466fb80c552154cbc484"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzIxOTkwMjMyNjk4NzM_7104810d-80b9-41d9-b037-4a23537af00e" continuedAt="ibd7f237836b44d97bbdc82cd52e2c30f" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in this acquisition consisted of the following as of the date of acquisition (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.221%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:25.218%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie420fd6d67ea4026ac76cd01f8ae887e_D20220101-20221231" decimals="-3" name="us-gaap:IndefinitelivedIntangibleAssetsAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzEtMS0xLTEtODU3Nzg_092fc2eb-0cb3-42c8-99f2-41fa4f87e367">2,800</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i950fb400edd84bc0b1053d0f045f4bd2_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzQtMS0xLTEtODU3Nzg_b9cdd141-b9b7-4f3c-b849-29a85139886e">11,900</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i950fb400edd84bc0b1053d0f045f4bd2_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzQtMy0xLTEtODU3Nzg_27953b33-c762-453a-9abf-924b2f16be43">12</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23c6169a4f084952b8b81fb79a422cb7_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzUtMS0xLTEtODU3Nzg_e6199490-8262-4d9d-ad1c-9d872e80eb44">14,700</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">2020 Acquisitions</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2020, the Company acquired <ix:nonFraction unitRef="business" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfBusinessesAcquired" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzEwNQ_b5cc5c60-f080-409a-bd66-7804a671fef1">five</ix:nonFraction> businesses in separate transactions, described further below, <ix:nonFraction unitRef="business" contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfBusinessesAcquired" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzE3MA_06e2caca-4e7d-4367-97e9-559dd368b245">two</ix:nonFraction> of which are included within the Company's Renewables segment, <ix:nonFraction unitRef="business" contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfBusinessesAcquired" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzIzNg_1ec7c656-c79c-4819-b9ee-3c8a05afae12">two</ix:nonFraction> in the Company's Agtech segment, and <ix:nonFraction unitRef="business" contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfBusinessesAcquired" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzI2Ng_5c76f2d0-2b08-431c-a36e-afafb9ff9f81">one</ix:nonFraction> in the Company's Residential segment.  The purchase consideration for each acquisition was allocated to the assets acquired and liabilities assumed based upon their respective fair values.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 31, 2020, the Company purchased all the outstanding membership interests of TerraSmart LLC and TerraTrak LLC (collectively, "TerraSmart"), a leading provider of screw-based, ground-mount solar racking technology, particularly used for solar projects installed on challenging terrain. The results of TerraSmart have been included in the Company's consolidated financial results since the date of acquisition within the Company's Renewables segment. The purchase consideration for the acquisition of TerraSmart was $<ix:nonFraction unitRef="usd" contextRef="iba42d8c107304be29ecfaed639e54bf3_D20220101-20221231" decimals="-5" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5Xzk3NA_9cd31faa-2406-41c6-880e-2e35ca868daa">223.9</ix:nonFraction>&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the equity purchase agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase price for the TerraSmart acquisition was allocated to the assets acquired and liabilities assumed based upon their respective fair values estimated as of the date of acquisition.  The Company has completed the process to confirm the existence, condition and completeness of assets acquired and liabilities assumed to establish fair values of the assets acquired and liabilities assumed to determine the amount of goodwill to be recognized as of the date of acquisition.  The final determination of the fair value of certain assets and liabilities was completed within a measurement period of up to one year from the date of acquisition.  The excess consideration was recorded as goodwill and approximated $<ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-5" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzE4MTg_86362da0-e083-4024-bc05-7154376cc040">141.0</ix:nonFraction>&#160;million, all of which is deductible for tax purposes. Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the domestic solar energy market.</span></div><ix:continuation id="i54ad08b24d0b40d6acd2ed57aab26773" continuedAt="ibc004911135847f0931ec802b8c8470a"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The allocation of the TerraSmart purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:78.987%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.813%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzAtMS0xLTEtNzg2MDg_7696ef48-0eae-431b-bbd1-1a7d1ceeac7d">1,491</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzEtMS0xLTEtNzg2MDg_dc6425dd-c675-4776-9c70-4a728dbc8982">5,569</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzItMS0xLTEtNzg2MDg_504eeed7-3647-4f7d-b1d9-9ade086f6239">11,446</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzMtMS0xLTEtNzg2MDg_0ed95c72-b2c2-429c-88eb-94807593b100">64,150</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzQtMS0xLTEtNzg2MDg_d010004e-b289-407f-84ce-05d0accdc92b">1,854</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzUtMS0xLTEtNzg2MDg_8d413a4b-ec26-49e8-a436-b2acf89e5c6d">1,640</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzYtMS0xLTEtNzg2MDg_58a5e33f-9016-480d-8bcf-619eba5dad3b">140,997</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzctMS0xLTEtNzg2MDg_b7b89199-6e18-4d0f-b601-31947206f60c">223,867</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">49</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="if2b9c3ff87e6466fb80c552154cbc484" continuedAt="i34fd1dcb96914d8991fd329dee176e26"><ix:continuation id="ibd7f237836b44d97bbdc82cd52e2c30f" continuedAt="ia7efbeba87794534b4bfbbddbabcafdf"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in the TerraSmart acquisition consisted of the following as of the date of acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:51.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:25.256%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3e16b98023f248ff90c852fdcd7a2623_D20220101-20221231" decimals="-3" name="us-gaap:IndefinitelivedIntangibleAssetsAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzEtMS0xLTEtNzg2MDg_32fbcdca-e039-4cec-bce4-6c349508ed0b">20,830</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61cb50863b25452db870ee255e5a8c82_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzMtMS0xLTEtNzg2MDg_594c6748-6e49-4c64-bd67-31096bc69f4a">1,940</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i61cb50863b25452db870ee255e5a8c82_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzMtMy0xLTEtNzg2MDg_dd967e2b-f862-4abb-9b87-282e48a26081">12</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8bf47beeeac44a04a5f55b11927aaaf2_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzQtMS0xLTEtNzg2MDg_6f353e5b-e003-4e34-864c-a020077f97d9">35,110</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i8bf47beeeac44a04a5f55b11927aaaf2_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzQtMy0xLTEtNzg2MDg_d05ba523-c6a6-444e-8604-c96af72a88e7">12</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if7639d49bdfc4003941beb06441de5c6_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzYtMS0xLTEtNzg2MDg_0cbd55fe-a22a-46e6-93a8-ca11a4162f32">6,270</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less than 1 year</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iba42d8c107304be29ecfaed639e54bf3_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzctMS0xLTEtNzg2MDg_e621c54f-1412-42ee-8982-59e936639a14">64,150</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div></ix:continuation><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 11, 2020, the Company purchased all the outstanding stock of Sunfig Corporation ("Sunfig"), a provider of software solutions that optimize solar energy investments through upstream design, performance and financial modeling, for a purchase consideration of $<ix:nonFraction unitRef="usd" contextRef="i8f277843f5534746b24281c4ee2014d5_D20201211-20201211" decimals="-5" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzI2ODI_9921c092-ae9e-418e-b017-82655fbe59c4">3.8</ix:nonFraction>&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the stock purchase agreement.  The results of Sunfig have been included in the Company's consolidated financial results since the date of acquisition within the Company's Renewables segment.  The excess consideration was recorded as goodwill and approximated $<ix:nonFraction unitRef="usd" contextRef="i5e6f452b4a1b4e6a8b184d4c8f80496e_I20201211" decimals="-5" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzMwMzU_2897c634-5c11-4f7e-bfac-a581f6cbff03">3.5</ix:nonFraction>&#160;million, all of which is deductible for tax purposes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 15, 2020, the Company purchased substantially all of the assets of Architectural Mailboxes LLC ("Architectural Mailboxes"), a complementary addition to Gibraltar's existing mail and package solutions business within the Residential segment, for a purchase consideration of $<ix:nonFraction unitRef="usd" contextRef="idb4bde9ae5a348e78d63923d447340b3_D20201015-20201015" decimals="-5" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzMzNzE_8c8077d5-9625-4ccc-abc1-c2827c36cd10">26.9</ix:nonFraction>&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the asset purchase agreement. The results of Architectural Mailboxes have been included in the Company's consolidated financial results since the date of acquisition within the Company's Residential segment.  The excess consideration was recorded as goodwill and approximated $<ix:nonFraction unitRef="usd" contextRef="i9e9f7895818b484da5882e080d8e2452_I20201015" decimals="-5" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzM3NDE_f8f5a1c3-e425-4319-b150-50957126b3a3">7.4</ix:nonFraction>&#160;million, all of which is deductible for tax purposes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 13, 2020, the Company purchased substantially all of the assets of Delta Separations, LLC, a California limited liability company, and Teaching Tech, LLC, a California limited liability company (collectively, "Delta Separations") for a purchase consideration of $<ix:nonFraction unitRef="usd" contextRef="i0ef75e3c221f4f338c1bf51f38ce9576_D20200213-20200213" decimals="-5" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzQwNjg_528db329-0f50-4608-938d-ab2c9780e338">47.1</ix:nonFraction>&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the asset purchase agreement.  Delta Separations was a privately-held engineering company primarily engaged in the assembly and sale of centrifugal ethanol-based extraction systems. The results of Delta Separations have been included in the Company's consolidated financial results since the date of acquisition within the Company's Agtech segment.  The excess consideration was recorded as goodwill and approximated $<ix:nonFraction unitRef="usd" contextRef="i902a884f64974d83822f51709064c20a_I20200213" decimals="-5" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzQ1Nzk_9e713e3c-8245-4ad3-b678-d27f35f2c59b">32.2</ix:nonFraction>&#160;million, all of which is deductible for tax purposes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On January 15, 2020, the Company purchased substantially all of the assets of Thermo Energy Systems Inc. ("Thermo"), a Canadian-based, privately held provider of commercial greenhouse solutions in North America providing growing infrastructure for the plant based organic food market, for a purchase consideration of $<ix:nonFraction unitRef="usd" contextRef="if86ca76cd65c4006b3692afadc0b02ae_D20200115-20200115" decimals="-5" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzQ5NDc_be718c58-f822-481f-aadb-d1fea79107b3">7.3</ix:nonFraction>&#160;million.  The results of Thermo have been included in the Company's consolidated financial results since the date of acquisition within the Company's Agtech segment.  The excess consideration recorded as goodwill approximated $<ix:nonFraction unitRef="usd" contextRef="i439e4e6ea5524e078df5e17c1e2b6d4f_I20200115" decimals="-5" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzUxNjg_02a1e765-c2ad-4bc4-999c-eb696e0c23db">19.1</ix:nonFraction>&#160;million, all of which is deductible for tax purposes.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">50</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i34fd1dcb96914d8991fd329dee176e26"><ix:continuation id="ibc004911135847f0931ec802b8c8470a"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo is as follows as of the respective date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:72.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:25.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzAtMS0xLTEtNzg2MDg_2300cbc8-b26f-4ea2-97e2-0742e940c867">179</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" sign="-" name="rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzEtMS0xLTEtNzg2MDg_34856def-62e9-4a44-9645-9c6d90863baa">15,377</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzItMS0xLTEtNzg2MDg_229f78d2-440b-4cf9-afd6-1c05e4f95012">1,740</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzMtMS0xLTEtNzg2MDg_8efad9b8-e7a3-49f0-be25-8bec191f9b79">38,066</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzQtMS0xLTEtNzg2MDg_6f059119-61e6-4b30-b8c1-90c853d3f0ad">1,528</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzUtMS0xLTEtNzg2MDg_82aa9742-6321-4269-8bb6-eebffa6f5e55">2,381</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzYtMS0xLTEtNzg2MDg_eea8c3b0-a16b-4313-b26d-138f573c1bf7">5,576</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzctMS0xLTEtNzg2MDg_fac48af9-fa4c-4a19-9645-f0c47ac79af1">62,161</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzgtMS0xLTEtNzg2MDg_11485ce1-a253-445d-aa54-efbf4a0413f9">85,102</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the respective markets.</span></div><ix:continuation id="ia7efbeba87794534b4bfbbddbabcafdf"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo consisted of the following as of the respective date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:47.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:22.291%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.387%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5cc82b0990cc4dfb8a6bdd944787604c_D20220101-20221231" decimals="-3" name="us-gaap:IndefinitelivedIntangibleAssetsAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzEtMS0xLTEtNzg2MDg_64fdfe09-db94-4394-82ef-6fe333ccf84e">8,100</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifca7e9995091438d9f29db951e63c3e1_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzItMS0xLTEtNzg2MDg_07a8dfc3-bdca-4f9e-8d2a-ee8d89752696">1,177</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifca7e9995091438d9f29db951e63c3e1_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzItMy0xLTEtNzg2MDg_991f5688-2bd0-4aca-bdf3-7687056788c4">3</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id976d25e9da5438eaf01269b17b7cc75_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzMtMS0xLTEtNzg2MDg_cef21088-6992-4ba8-810c-eca6c8edfa60">8,345</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="iee76914c5a3a46ada1936808ffbf5332_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzMtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjplNzY1YmQ5ZTU0MTc0NDRhOTQzMGZiMzFjNjI0MDBlOV80_e7a740ff-7fc6-46e6-a9d8-395b9f8ad1fa">5</ix:nonNumeric> - <ix:nonNumeric contextRef="i2154daa1d9f344679a5d40aaa4d8d1f0_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzMtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjplNzY1YmQ5ZTU0MTc0NDRhOTQzMGZiMzFjNjI0MDBlOV85_8806a6bc-a5e1-4f51-b2c9-939f00a080d0">15</ix:nonNumeric> years</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ae678b7a3cb46f6abea5ea2e6935c0a_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzQtMS0xLTEtNzg2MDg_9f6a4dee-cd95-4e6f-865f-244ac6c3d846">18,480</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="iaf210ed4dc594bd0bd16f946f436a7e7_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzQtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyMTBiYzE0ODJlODA0Y2NkYTEwM2E0ZWQyOTYxNWVkY180_5c264a77-12bd-461d-b781-30ab275b0591">11</ix:nonNumeric> - <ix:nonNumeric contextRef="iabf1f8f4f96e4c75b1945a4982f727cd_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzQtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyMTBiYzE0ODJlODA0Y2NkYTEwM2E0ZWQyOTYxNWVkY185_a3959c12-e9b4-48c5-a1ca-db7e19723a25">13</ix:nonNumeric> years</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iffcf9f3e99d24cafbf555fcf67952107_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzUtMS0xLTEtNzg2MDg_9d2bac43-3db9-44dd-af76-b194dd8f9e7b">1,036</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="iffcf9f3e99d24cafbf555fcf67952107_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzUtMy0xLTEtNzg2MDg_99c6bfb5-6ea6-46f0-80a4-df78a5a1d959">5</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icb949c48d0124d1db3f745a0ef827873_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzYtMS0xLTEtNzg2MDg_1771af41-616c-476a-a437-806695a737d4">928</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less than <ix:nonNumeric contextRef="icb949c48d0124d1db3f745a0ef827873_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzYtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo0ZTk2Y2IzMmQ4ZDE0ZTJkYjI2NzUwNmJiMTk0MWMzYl8xNA_b296fe8f-0f48-42b1-a8b4-89044d5f9c29">1</ix:nonNumeric> year</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i62f610b3b97140f2b98e1f2951aa8141_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzctMS0xLTEtNzg2MDg_47662f96-2077-4fce-aa8a-a7e81600e593">38,066</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div></ix:continuation><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition of QAP was financed primarily through borrowings under the Company's revolving credit facility. The acquisition of TerraSmart was financed through a combination of cash on hand and borrowings under the Company's revolving credit facility. The acquisitions of Sunfig, Architectural Mailboxes, Delta Separations, and Thermo were funded from cash on hand.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized costs as a component of cost of sales related to the sale of inventory at fair value as a result of allocating the purchase price of recent acquisitions. The Company also incurred certain acquisition-related costs composed of legal and consulting fees.  These costs were recognized as a component of selling, general, and administrative expenses in the consolidated statements of operations. </span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:ScheduleofBusinessCombinationCostsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzgwOTE_a5b51ac1-2a07-40d5-b39c-0aa125cc7470" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition-related costs consisted of the following for the years ended December 31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:53.445%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.562%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.562%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.565%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5f658b3ed6264fd99f84bf5b525b2ade_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzEtMS0xLTEtNzg2MDg_150fec7e-7354-48b5-b3df-307021420af1">1,427</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63ddff1a813649999f3234aa74dec939_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzEtMy0xLTEtNzg2MDg_8b1a0675-36cb-4479-99e6-933d1b0d2c58">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifcb6399157ce46b3ab6578faaa0799ac_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzEtNS0xLTEtNzg2MDg_14049c12-c854-4319-9a30-d18a91af58a8">634</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i26e2e96e9b424dc3931dcd7088766572_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzItMS0xLTEtNzg2MDg_b1b0550e-af06-4b3f-95b4-bfedd252d473">545</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i49718e9a7dff488e96157cf2b01ea7b1_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzItMy0xLTEtNzg2MDg_eb7fd266-3a46-44d4-a133-b0de171cbf10">949</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i64c401bebe194e8da22bd1d9ee5cb954_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzItNS0xLTEtNzg2MDg_cdab496c-913a-4249-8dbf-4635055394b1">3,230</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total acquisition related costs</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzMtMS0xLTEtNzg2MDg_f2ccbae2-5818-4373-8f44-2e2ce933a2ed">1,972</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzMtMy0xLTEtNzg2MDg_c4f62b55-fc63-4855-909e-27620b3d62c5">949</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzMtNS0xLTEtNzg2MDg_fcf766ee-519f-4fab-91b3-c65eb57410c9">3,864</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_106"></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">51</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(7) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1Nzk_2a1191a3-1b61-4570-9699-b434ca03e53e" continuedAt="icf9f72153d834a1ca04042e234c3f1cf" escape="true">GOODWILL AND RELATED INTANGIBLE ASSETS</ix:nonNumeric></span></div><ix:continuation id="icf9f72153d834a1ca04042e234c3f1cf" continuedAt="ie3f9d3702b9e41ee87bf29f3b7a0bacc"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Goodwill</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfGoodwillTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1NzE_608328b2-bd5e-492c-8964-ba090f0e0228" escape="true"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the years ended December&#160;31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:33.841%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.335%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if71ea0dc0ccb42fe9d884b3b42df66c9_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtMS0xLTEtNzg2MDg_00d5ebe5-b249-44e8-83af-f2c66a407904">192,527</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia980978b7aaa41c3a7838d24b52993e0_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtMy0xLTEtNzg2MDg_cc1b66bd-e6bc-47b7-af2f-9b7eb0f0fa19">205,452</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i333fd532e777418bb2a4458a54d5087d_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtNS0xLTEtNzg2MDg_360188e9-c773-4c4f-a660-cef8d56587ea">84,622</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4b1b166ea550472199d3c2e4dfbaa397_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtNy0xLTEtNzg2MDg_98597a52-7ee0-4431-9b9c-eb0aa30c8281">31,678</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtOS0xLTEtNzg2MDg_6e3f7ccc-134b-41b0-8e1e-f492d57cebdc">514,279</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to prior year acquisitions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i440bce1026014d699ffb16eb70be7748_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtMS0xLTEtNzg2MDg_48ea2e6a-4fd9-4d3f-9b71-233fb45a8eab">2,433</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtMy0xLTEtNzg2MDg_cfd5a5e2-e523-40ed-869f-aa13978f6f00">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtNS0xLTEtNzg2MDg_e6581a79-27fc-4003-9337-7bd5aa4302c4">323</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtNy0xLTEtNzg2MDg_fbf61364-2028-4866-82ce-5c62e9cdd4d6">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtOS0xLTEtNzg2MDg_129b2e57-e29d-4a07-84dd-8f6b47d1a234">2,110</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i440bce1026014d699ffb16eb70be7748_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtMS0xLTEtNzg2MDg_857b88f7-604b-462d-bb65-0ebea0b1b099">1,414</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtMy0xLTEtNzg2MDg_2923952b-2670-46d1-b8f5-18076419df91">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtNS0xLTEtNzg2MDg_a4569e45-a542-445f-bfca-91dcd303dd32">187</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtNy0xLTEtNzg2MDg_72b85d6f-f63c-4839-a705-386287b30243">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtOS0xLTEtNzg2MDg_40a055c7-6e76-4467-a360-c3160efb7fd7">1,227</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74ebb29fe92148aab89177f0f20edfba_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtMS0xLTEtNzg2MDg_8b8e2725-0289-4f58-aa08-fc08e65528cc">188,680</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i93429e7458594c2e953b224890378183_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtMy0xLTEtNzg2MDg_1855ed72-b824-4973-874e-b62a55e71875">205,452</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3622765463ad433297deb9d47bcfb46c_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtNS0xLTEtNzg2MDg_59c13b79-324c-4330-bf44-e2b3c0eac11a">85,132</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied0814c367b446958b056acced90712d_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtNy0xLTEtNzg2MDg_e38d300c-4631-4ee5-91ea-aef2236769c3">31,678</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtOS0xLTEtNzg2MDg_de2d262d-d240-4b7f-abfe-e50ea7a7b97a">510,942</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctMS0xLTEtNzg2MDg_f7c09a0c-78b1-4355-8c81-768cd7d80b95">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctMy0xLTEtODMzODk_2b6505ce-9382-447b-b252-72413ebb4448">3,604</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctNS0xLTEtNzg2MDg_91fc83f8-57c0-4470-9c29-f30d02e44109">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctNy0xLTEtNzg2MDg_6e031ebd-9899-4616-bdb9-1a0e1f3aa40b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctOS0xLTEtNzg2MDg_31ce51ab-ba1a-41dc-93d6-a2f472934c2f">3,604</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustment to prior year acquisition</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktMS0xLTEtNzg2MDg_d2e423ce-5337-4755-bec5-d7b8491dcda4">904</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktMy0xLTEtNzg2MDg_4ded2beb-90c5-4c73-a44c-e478b99f3a2a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktNS0xLTEtNzg2MDg_cdb1a61c-04fd-4f63-add2-5590f88f2f4a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktNy0xLTEtNzg2MDg_863a3f6e-13aa-48c6-841b-8d1b0176f7b2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktOS0xLTEtNzg2MDg_a2ceed54-f51d-44fc-bd9f-75df469f3566">904</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTEtMS0xLTc4NjA4_3eb627bd-2a25-4d77-9d3c-52dc92c58b3c">1,554</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTMtMS0xLTc4NjA4_19408495-a5d9-4ae8-9ccf-fb7432006fdd">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTUtMS0xLTc4NjA4_2f107b66-aa47-424a-bf47-ae49f908d7fa">1,533</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTctMS0xLTc4NjA4_72c00a35-d745-486c-bcc5-3f035ba7dca4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTktMS0xLTc4NjA4_4b50c231-1ac2-486d-bc23-85e93d2e1995">3,087</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie13564e143704ba78a69c6f2857d3f71_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTEtMS0xLTc4NjA4_b8134e15-7b6b-4b7e-9088-62a48b0a6d69">188,030</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3d37137cd4fe440481550ac83f0f08fd_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTMtMS0xLTc4NjA4_2ac222dc-85e8-4834-b39b-422f95c6375a">209,056</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i36572c7ac0e74bb28ca7bb656743aecf_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTUtMS0xLTc4NjA4_e6ec75dd-d163-4bae-a6c5-52499702618f">83,599</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id0f0d39e2c1a4fa6a83683917981fe44_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTctMS0xLTc4NjA4_3ea07ead-0b67-430c-b478-268823f839ab">31,678</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTktMS0xLTc4NjA4_26de4230-3a07-4fa0-ba87-7a37cf902524">512,363</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill is recognized net of accumulated impairment losses of $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI0NA_7c67090b-0b42-44a9-b907-a488784cc359"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-5" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI0NA_fae54f36-358e-48fe-b79f-1170d2adf370">133.2</ix:nonFraction></ix:nonFraction> million as of December&#160;31, 2022 and 2021, respectively.  <ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="INF" name="us-gaap:GoodwillImpairmentLoss" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI4Nw_12155889-5436-4c46-8445-d6170ff271ce"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="us-gaap:GoodwillImpairmentLoss" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI4Nw_15ff2f97-3c3d-4035-9dfa-99db7cb5b19d">No</ix:nonFraction></ix:nonFraction> goodwill impairment charges were recognized by the Company during 2022 or 2021.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Annual and Interim Impairment Testing</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company tests goodwill and indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31 and at interim dates when indicators of impairment are present. In 2022, 2021 and 2020, no indicators of impairment were identified as of interim dates; therefore, no interim tests were performed.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the October 31, 2022 impairment test, the Company conducted a quantitative analysis for all <ix:nonFraction unitRef="reporting_unit" contextRef="i89b997777cfc479cbbd4ef3e03aeeabf_D20211031-20211031" decimals="0" name="us-gaap:NumberOfReportingUnits" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzgyMQ_26824c4a-3283-42f9-bb62-6ec6de5e9e58">eight</ix:nonFraction> of the Company&#8217;s reporting units. The quantitative impairment test consists of comparing the fair value of a reporting unit with its carrying value including goodwill. The fair value of each reporting unit evaluated under the quantitative test was determined using two valuation techniques: an income approach and a market approach. Each valuation approach relies on significant assumptions including a weighted average cost of capital ("WACC") based upon the capital structure of market participants in the Company&#8217;s peer groups, projected revenue growth, forecasted cash flows, and earnings multiples based on the market value of the Company and market participants within its peer groups.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the Company's annual testing for 2022, 2021 and 2020, <ix:nonFraction unitRef="reporting_unit" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="0" name="rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE1ODU_8716dd44-3a7e-428d-a00d-874c19025467"><ix:nonFraction unitRef="reporting_unit" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="0" name="rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE1ODU_eff664da-17a6-4753-8342-990bf4dc22b1"><ix:nonFraction unitRef="reporting_unit" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="0" name="rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE1ODU_fdaca3f8-ff1e-49a4-8e90-f3919171f31c">none</ix:nonFraction></ix:nonFraction></ix:nonFraction> of the reporting units with goodwill as of the testing date had carrying values in excess of their fair values.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">52</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="ie3f9d3702b9e41ee87bf29f3b7a0bacc"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Acquired Intangible Assets</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1NTg_45ec0244-de8e-456e-95bf-48c63c3777f2" escape="true"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Acquired intangible assets consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:45.829%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.624%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite-lived intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i28ed3266a0424e99ac87b56e62129621_I20221231" decimals="-3" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtMS0xLTEtNzg2MDg_c3dbc7f0-226d-4ede-8fe8-8f4b72162164">55,500</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i28ed3266a0424e99ac87b56e62129621_I20221231" decimals="-3" name="rock:IndefiniteLivedAccumulatedAmortization" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtMy0xLTEtNzg2MDg_2a8628c6-d638-4ba0-8e96-f08156867fb5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie3a7d0c314a24499b50a7c7fbd12721a_I20211231" decimals="-3" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtNS0xLTEtNzg2MDg_8fc0c7e2-40d7-4fd4-9fa8-3308d96e7421">52,700</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie3a7d0c314a24499b50a7c7fbd12721a_I20211231" decimals="-3" name="rock:IndefiniteLivedAccumulatedAmortization" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtNy0xLTEtNzg2MDg_eea24c60-22d5-4898-a3e9-68f91401833c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finite-lived intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i89da7e5c329e4105aa84f199f668c844_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtMS0xLTEtNzg2MDg_029161f1-b41b-4947-9693-387a2e11c259">5,448</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i89da7e5c329e4105aa84f199f668c844_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtMy0xLTEtNzg2MDg_e1f15174-822e-4efc-be55-e1bc6c1b0c80">4,481</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic469bc0572314902853c3ad9e1d3baef_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtNS0xLTEtNzg2MDg_2195f4b6-acf8-4ed4-ad1f-f08f57145f9c">5,521</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic469bc0572314902853c3ad9e1d3baef_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtNy0xLTEtNzg2MDg_08bfaa4d-c5d4-46f1-ad4a-99abc266e1e0">4,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unpatented technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i72e7b4f08fda409a971ae7455c53cc60_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtMS0xLTEtNzg2MDg_4e36f23a-ddc5-483c-9bc8-930bbbea35b9">34,163</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i72e7b4f08fda409a971ae7455c53cc60_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtMy0xLTEtNzg2MDg_8c98ed6c-e827-4df5-89a9-4b8df03ea8f0">22,037</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic50c252ace0543c7b187a1b6c1ee0fc4_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtNS0xLTEtNzg2MDg_e9cbea45-7300-4a94-9057-f64330918360">38,474</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic50c252ace0543c7b187a1b6c1ee0fc4_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtNy0xLTEtNzg2MDg_c402f429-a2ef-4eb0-aa0e-bb682547116e">20,656</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaffcc7b0c9354b07a05abe249f56522f_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctMS0xLTEtNzg2MDg_ac8b7a2e-a7f8-471c-a381-6a9acb0fbc8d">115,125</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaffcc7b0c9354b07a05abe249f56522f_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctMy0xLTEtNzg2MDg_baba04f0-be39-41ee-bcae-3a72c4c55bfb">46,557</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9f5c95a2686047609f20149ad733e751_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctNS0xLTEtNzg2MDg_53977173-8a95-417b-94d9-d68b6d996943">108,591</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9f5c95a2686047609f20149ad733e751_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctNy0xLTEtNzg2MDg_1e4802e5-f1dc-4532-b4f5-bacabe1f4d09">39,832</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i042ca367b3054f458691848bac77b1c7_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtMS0xLTEtNzg2MDg_db162b8c-435a-4b1b-9dcb-b3764fe965fe">2,371</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i042ca367b3054f458691848bac77b1c7_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtMy0xLTEtNzg2MDg_26e32035-423e-48b4-b010-6471023314c3">2,006</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id68ad57c962249609b7ddaa9d04ac3f4_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtNS0xLTEtNzg2MDg_22882c13-1d88-43df-a3c1-58c662f79868">2,686</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id68ad57c962249609b7ddaa9d04ac3f4_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtNy0xLTEtNzg2MDg_b4c714d1-ee21-4528-bfc9-2ca0e826abe4">1,969</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7888d078e4f843edaf117043996952ed_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktMS0xLTEtNzg2MDg_f24e7ad5-1128-41a6-8896-2cae55dd64c6">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7888d078e4f843edaf117043996952ed_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktMy0xLTEtNzg2MDg_27d3301e-712f-4727-9d83-91a460b9c3a8">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1dc5b3189a014aaf816b9491ac09dee8_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktNS0xLTEtNzg2MDg_0ca6f631-709c-4921-a4ee-219bde7d0f74">7,200</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1dc5b3189a014aaf816b9491ac09dee8_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktNy0xLTEtNzg2MDg_8c2eea78-d455-4fe5-be14-2c7e469963ec">7,200</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTEtMS0xLTc4NjA4_0853e76c-c639-427e-8969-64930459b0e8">157,107</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTMtMS0xLTc4NjA4_b16ee28c-ad61-481a-a9ee-a1f7fd26b0fa">75,081</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTUtMS0xLTc4NjA4_f4114e4d-dfcf-48be-b1af-dad5844bd81a">162,472</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTctMS0xLTc4NjA4_0a829371-e81b-4365-a59c-e5b721eb265a">73,668</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total acquired intangible assets</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="rock:AcquiredIntangibleAssetsTotal" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTEtMS0xLTc4NjA4_8c268e19-f7ac-4833-ad95-5d956a5e0f1c">212,607</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="rock:TotalAcquiredIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTMtMS0xLTc4NjA4_390ce00c-c956-41b7-8a54-eace54aba54d">75,081</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="rock:AcquiredIntangibleAssetsTotal" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTUtMS0xLTc4NjA4_f0051ed6-f3f2-457f-b0ac-de90096047a4">215,172</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="rock:TotalAcquiredIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTctMS0xLTc4NjA4_e342c9a3-ed2a-4d21-9d1c-91963f18d8bf">73,668</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company did not recognize impairment charges related to intangible assets during the year ended December 31, 2022. During the year ended December 31, 2021, the Company recognized <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzIxOTkwMjMyNTg1MTI_cc8a4d64-9e7f-4e6b-a81a-9f0b19229b16">impairment charges</span> of $<ix:nonFraction unitRef="usd" contextRef="ifb286abff79f433bb164050d22b67bf2_D20220101-20221231" decimals="-5" name="us-gaap:ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE4Njk_2a1a93e9-aaca-47ac-b3b3-d4db7543638c">8.3</ix:nonFraction>&#160;million related to indefinite-lived trademark intangible assets due to a rebranding initiative that resulted in the discontinuation of certain indefinite-lived trademarks in the Company's Agtech segment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized amortization expense related to the definite-lived intangible assets. <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1ODA_a15d056d-5ba4-454e-8c27-50c9027d5eb0" continuedAt="iac095fec7d7d4f0e9299e6f32fb9e2ff" escape="true">The following table summarizes amortization expense for the years ended December&#160;31 (in thousands):</ix:nonNumeric></span></div><div style="margin-top:3pt;text-align:justify"><ix:continuation id="iac095fec7d7d4f0e9299e6f32fb9e2ff"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:59.047%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.694%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.694%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.695%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo1MjA2MDI0NDY1YzY0OWRmYjA1NDAzOTcxMDVhMDRhZC90YWJsZXJhbmdlOjUyMDYwMjQ0NjVjNjQ5ZGZiMDU0MDM5NzEwNWEwNGFkXzEtMS0xLTEtNzg2MDg_91db5952-f3db-4bf8-9c91-8b340e39a67a">11,584</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo1MjA2MDI0NDY1YzY0OWRmYjA1NDAzOTcxMDVhMDRhZC90YWJsZXJhbmdlOjUyMDYwMjQ0NjVjNjQ5ZGZiMDU0MDM5NzEwNWEwNGFkXzEtMy0xLTEtNzg2MDg_362ad2c5-a4f1-4351-8a4a-c33b626d8574">18,856</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo1MjA2MDI0NDY1YzY0OWRmYjA1NDAzOTcxMDVhMDRhZC90YWJsZXJhbmdlOjUyMDYwMjQ0NjVjNjQ5ZGZiMDU0MDM5NzEwNWEwNGFkXzEtNS0xLTEtNzg2MDg_1f069425-75e3-452d-b7d8-eebfe703caf5">9,663</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1NTY_eac6ed66-2b1c-4ea8-a724-aa9a01508397" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense related to acquired intangible assets for the next five years ended December&#160;31 is estimated as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:45.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.666%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.666%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.666%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.666%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.671%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2027</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtMi0xLTEtNzg2MDg_0e1effbd-ed45-4fb8-9352-5c161161c2a1">11,102</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtNC0xLTEtNzg2MDg_dc7c1864-abde-4818-8b5a-e27be92285da">10,922</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtNi0xLTEtNzg2MDg_05e75f26-5ff3-44c7-8cf6-9fb90674e313">10,782</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtOC0xLTEtNzg2MDg_a24b2d2b-7742-4e19-b778-cf1437d70900">9,370</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtMTAtMS0xLTc4NjA4_ae6febe9-bf1e-4028-96ae-11f238c3ed98">7,728</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_109"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(8) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90ZXh0cmVnaW9uOjhiYTA2Y2EzODViMDQ2M2VhM2ZkYWE3ODJlZGRmZjRlXzkxNQ_1616077b-1e8c-4813-837b-b1b4d0cddabb" continuedAt="ia36a8d8d78fe4c43b909289ad438a8e2" escape="true">ACCRUED EXPENSES</ix:nonNumeric></span></div><ix:continuation id="ia36a8d8d78fe4c43b909289ad438a8e2" continuedAt="i5cd3e18061014ec8abfb8a35c83fdc7a"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90ZXh0cmVnaW9uOjhiYTA2Y2EzODViMDQ2M2VhM2ZkYWE3ODJlZGRmZjRlXzkyMg_8efb30c4-4d07-4037-91b8-6703809d6041" escape="true"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued expenses at December&#160;31 consisted of the following (in thousands): </span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:72.692%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Compensation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="rock:AccruedCustomerRebatesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEtMS0xLTEtNzg2MDg_5bb20862-4a3b-4aa7-9152-074c63140c35">17,010</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="rock:AccruedCustomerRebatesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEtMy0xLTEtNzg2MDg_b4f769c3-450c-4237-bea1-a19eb4d8c14f">15,293</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer rebates</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzItMS0xLTEtODc4MjI_cc84d13d-54c0-42e8-be58-0de1f9ffa622">16,768</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzItMy0xLTEtODc4MjI_fefb4aaf-075d-4d89-96ae-a94d7b428954">15,253</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_2d1782bf-442c-4339-b6ee-027a31ee3839"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_ccd48544-48b8-4ce4-885c-7cb992fa852e">Current operating lease liability</span></span></span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMS0xLTEtNzg2MDg_27f04e12-f2d9-4d82-bb6d-e1dbacce8b13">8,620</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMy0xLTEtNzg2MDg_bc1166f7-0ab9-47b4-95cd-737ec9db3d75">7,239</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzUtMS0xLTEtNzg2MDg_83a36eb8-8e8b-4508-bcab-8430c24229d4">6,440</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzUtMy0xLTEtNzg2MDg_42d1ba79-f34c-4423-8dd4-3eb2f1af4a03">7,310</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued warranties</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzYtMS0xLTEtOTQ0OTY_ca3d13eb-1746-49c3-9788-9898209ad9e0">6,251</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzYtMy0xLTEtOTQ0OTY_10654d11-a080-4ec2-a082-8237530944ac">5,686</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest and taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccruedInsuranceCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMS0xLTEtODUwMDI_da3a3f03-8424-4530-8f66-3a39612b06d6">5,696</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccruedInsuranceCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMy0xLTEtODUwMDI_33a13cdb-970c-4fc2-8cd5-0abbc74b89f4">5,463</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unearned revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMS0xLTEtNzg2MDg_95f26be1-a0c3-4486-bf08-1ed3bc5da59b">4,572</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMy0xLTEtNzg2MDg_e2e89d8a-8dd9-41f1-9636-ebbcb4786d8b">3,681</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of MSPP liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="rock:AccruedSharebasedCompensationCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzktMS0xLTEtNzg2MDg_33168fd8-d476-48b5-add4-2039d2c495cb">2,267</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="rock:AccruedSharebasedCompensationCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzktMy0xLTEtNzg2MDg_3064331b-07bd-43a4-8f4a-ee9712c1dc61">2,947</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEwLTEtMS0xLTc4NjA4_71b11dcd-1278-42e8-b5f0-ef23c57b0467">6,097</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEwLTMtMS0xLTc4NjA4_87dc2432-8427-457f-aa31-cd6e27cd3ee6">5,121</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total accrued expenses</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzExLTEtMS0xLTc4NjA4_161711f7-2e03-419e-8973-4bf59c4b632e">73,721</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzExLTMtMS0xLTc4NjA4_0bfd1ef0-f210-46c0-a02b-c9ad686a476b">67,993</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued expenses for insurance are primarily for general liability, workers&#8217; compensation and employee healthcare policies for which the Company is self-insured up to certain per-occurrence and aggregate limits. The amounts </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">53</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i5cd3e18061014ec8abfb8a35c83fdc7a">accrued represent the Company's best estimates of the probable amount of claims to be paid. Differences between the amounts accrued and the amount that may be reasonably possible of payment are not material.  Accrued expenses for unearned revenue primarily relate to up-front customer deposits received on contracts for goods and services to be provided by the Company as further discussed in Note 3 "Revenue."  The current portion of Management Stock Purchase Plan liabilities ("MSPP liabilities") represents the Company's equity-based awards that are settled in cash, further described in Note 12 "Equity-Based Compensation."</ix:continuation></span></div><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_112"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(9) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:LongTermDebtTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE5NDY_c6549f33-af85-42ae-b4f7-cd00322e238b" continuedAt="ic2a6cfbe66684a738d67357c2dbabf9f" escape="true">DEBT</ix:nonNumeric></span></div><ix:continuation id="ic2a6cfbe66684a738d67357c2dbabf9f" continuedAt="ib78992d3533345cea29f262413d53543"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfDebtTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE5NDk_d9633da6-158e-438c-9b66-e41c114fe1bc" escape="true"><div style="margin-top:6pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:56.063%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.952%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.955%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit facility</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ide0cba670a934b7fa6ed49872e0a383f_I20221231" decimals="-3" name="us-gaap:DebtInstrumentCarryingAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzEtMS0xLTEtNzg2MDg_ed6f02d0-e087-48f7-aa9a-38af6391cc32">91,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i390ed5e5398a4d0f8bde706fbda3f977_I20211231" decimals="-3" name="us-gaap:DebtInstrumentCarryingAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzEtMy0xLTEtNzg2MDg_b7993dcc-f17a-4863-a38b-6980ad8ab31e">24,500</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less unamortized debt issuance costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredFinanceCostsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzMtMS0xLTEtNzg2MDg_4b7c9181-bf57-4bc6-83cb-5863dcc9cc34">2,238</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredFinanceCostsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzMtMy0xLTEtNzg2MDg_4297ed0d-97e1-464d-8450-944427256227">719</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total debt</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzQtMS0xLTEtNzg2MDg_53d3aa6b-f30a-467b-b164-2be64da04f07">88,762</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzQtMy0xLTEtNzg2MDg_d0150a24-7266-4fb1-a7a4-348cefa74dd5">23,781</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revolving Credit Facility</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 8, 2022, the Company entered into a Credit Agreement (the "Credit Agreement"), and concurrently with entering into the Credit Agreement, the Company paid off all amounts owed under the Sixth Amended and Restated Credit Agreement dated as of January 24, 2019, and which was terminated without any prepayment penalties. The Credit Agreement provides for a revolving credit facility and letters of credit in an aggregate amount equal to $<ix:nonFraction unitRef="usd" contextRef="id7bee0a4f4c04f22be0ab908a812d590_I20221208" decimals="-6" name="us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ4OTA_2db8f86b-132d-4583-a0c4-4acffbeaf434">400</ix:nonFraction>&#160;million. The Company can request additional financing to increase the revolving credit facility to $<ix:nonFraction unitRef="usd" contextRef="id7bee0a4f4c04f22be0ab908a812d590_I20221208" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ4NzY_07916071-16be-47d7-b220-93e015c06cff">700</ix:nonFraction>&#160;million or enter into a term loan of up to $<ix:nonFraction unitRef="usd" contextRef="i87eac64abb6b4190919865e4e52c33ab_I20221208" decimals="INF" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MDQ_1510f49d-6b2e-41ad-9c9f-ef56c379222a">300</ix:nonFraction>&#160;million subject to conditions set forth in the Credit Agreement.  The Credit Agreement contains <ix:nonFraction unitRef="debtcovenant" contextRef="id7bee0a4f4c04f22be0ab908a812d590_I20221208" decimals="INF" name="rock:DebtInstrumentNumberOfDebtCovenants" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5ODQ_f34ba61b-c042-4e35-85aa-5380f04c58a2">two</ix:nonFraction> financial covenants.  As of December 31, 2022, the Company was in compliance with all financial covenants.  The Credit Agreement terminates on December 8, 2027.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest rates on the revolving credit facility under the Credit Agreement bear interest, at the Company&#8217;s option, at a rate equal to the applicable margin plus (a) a base rate, (b) a daily simple secured overnight financing rate ("SOFR") rate, (c) a term SOFR rate or (d) for certain foreign currencies, a foreign currency rate, in each case subject to a 0% floor. Through March 31, 2023, the Credit Agreement has an initial applicable margin of <ix:nonFraction unitRef="number" contextRef="ie128a3846c194d75bd402acbbd1a4fe9_I20221208" decimals="5" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NDA_74432347-9554-425e-aa8d-e575097c5947">0.125</ix:nonFraction>% for base rate loans and <ix:nonFraction unitRef="number" contextRef="i72e5782bc3234021bc2a697ee85bfdde_I20221208" decimals="5" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5Nzc_bc4f070a-c23c-4e4c-904d-3ddf057525a0">1.125</ix:nonFraction>% for SOFR and alternative currency loans. Thereafter, the applicable margin ranges from <ix:nonFraction unitRef="number" contextRef="i7ad71497c76d470a84d354b521123b79_I20221208" decimals="5" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NDg_3b7a0c4a-db7a-4edd-b5d4-2287f130cce6">0.125</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="id2456037a4904999b206b3a3b3b12e6e_I20221208" decimals="2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NzA_a52c0cda-4656-4c56-a334-d9153cd3f475">1.00</ix:nonFraction>% for base rate loans and from <ix:nonFraction unitRef="number" contextRef="i491829aa14ff445087fe4d84630a451f_I20221208" decimals="5" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MTg_dc1bd66b-4df4-4fc9-b1c4-92ab87f06d84">1.125</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i7c6612ecdb514a43b8940d7651e47159_I20221208" decimals="4" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MjY_b63dd13d-8516-445d-b532-f9d9966a4d92">2.00</ix:nonFraction>% for SOFR and alternative currency loans based on the Company&#8217;s Total Net Leverage Ratio, as defined in the Credit Agreement. In addition, the Credit Agreement is subject to an annual commitment fee, payable quarterly, which is initially <ix:nonFraction unitRef="number" contextRef="i497e4dc4ca374e6f869a97d6180e3e4d_D20221208-20221208" decimals="4" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MzM_a80f1bb1-7da3-409b-a27d-46a9131356ff">0.20</ix:nonFraction>% of the daily average undrawn balance of the revolving credit facility and, from and after April 1, 2023, ranges between <ix:nonFraction unitRef="number" contextRef="i8864c40a209547638ebedf1fbf1f7123_D20221208-20221208" decimals="4" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NTY_f905b5a7-a421-4a0b-a539-3e69efe60fd7">0.20</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i0dd4765697774aa0b53e04ec0ca643d2_D20221208-20221208" decimals="4" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NjM_b8b35187-1085-4ed8-95de-62d6ac3203aa">0.25</ix:nonFraction>% of the daily average undrawn balance of the revolving credit facility based on the Company&#8217;s Total Net Leverage Ratio.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the Credit Agreement are secured by the trade receivables, inventory, personal property, equipment, and general intangibles of the Company&#8217;s significant domestic subsidiaries. Capital distributions are subject to certain Total Net Leverage Ratio requirements and capped by an annual aggregate limit under the Credit Agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On January 24, 2019, the Company entered into the Sixth Amended and Restated Credit Agreement ("Senior Credit Agreement"), which amended and restated the Company&#8217;s Fifth Amended and Restated Credit Agreement dated December 9, 2015, and provided a revolving credit facility and letters of credit in an aggregate amount equal to $<ix:nonFraction unitRef="usd" contextRef="ic0bce679a65c45d6b29a9ec16c6b6d10_I20190124" decimals="-6" name="us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzQyOA_2c831808-88a3-4621-bf28-9874b0da2d9f">400</ix:nonFraction> million. The Company had the ability to request additional financing to increase the revolving credit facility to $<ix:nonFraction unitRef="usd" contextRef="ic0bce679a65c45d6b29a9ec16c6b6d10_I20190124" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzUyMg_4978e838-a93d-4d64-ae8b-d5de8bdb4de2">700</ix:nonFraction> million or enter into a term loan of up to $<ix:nonFraction unitRef="usd" contextRef="i5b17fcbf0d4e40d7ba6715216de7c164_I20190124" decimals="INF" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzU2MA_085d497d-865e-40ac-912f-4149fd29f804">300</ix:nonFraction> million subject to conditions set forth in the Senior Credit Agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest rates on the revolving credit facility under the Senior Credit Agreement were based on LIBOR plus an additional margin that ranges from <ix:nonFraction unitRef="number" contextRef="if7ba4301de314a0ea4778486cdb23062_D20190124-20190124" decimals="5" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzg3OA_3e793bf6-d272-4f88-9007-f5dbe78471a0">1.125</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="ia6b99920cc0b47cd9139f7f7859da644_D20190124-20190124" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzg4NA_c492c0d6-0848-485d-b510-54514ed02a80">2.00</ix:nonFraction>%.  In addition, the revolving credit facility under the Senior Credit Agreement was subject to an undrawn commitment fee ranging between <ix:nonFraction unitRef="number" contextRef="i1a323de35a0e4ed79c546beae5e4d83f_D20190124-20190124" decimals="4" name="us-gaap:LineOfCreditFacilityCommitmentFeePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzk4OA_10d11820-2f58-49a4-8f4e-408aa1450755">0.15</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i664dba56ce324a7a84153d83b9d28430_D20190124-20190124" decimals="4" name="us-gaap:LineOfCreditFacilityCommitmentFeePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzk5NQ_fb2bbfa6-3b22-4f2d-920e-98ae695e5dff">0.25</ix:nonFraction>% based on the Total Leverage Ratio and the daily average undrawn balance. The Senior Credit Agreement terminated on December 8, 2022.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">54</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="ib78992d3533345cea29f262413d53543"><div style="margin-top:12pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Standby letters of credit of $<ix:nonFraction unitRef="usd" contextRef="i2131f3e7067e47028fbc6dbf4486512c_I20221231" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE1MTk_fd8634e5-7110-4e0e-b17c-57c82cab07e3">4.5</ix:nonFraction> million have been issued under the Credit Agreement to third parties on behalf of the Company as of December&#160;31, 2022. These letters of credit reduce the amount otherwise available under the revolving credit facility. The Company had $<ix:nonFraction unitRef="usd" contextRef="i2e00a01d8de24157995e47b11966bd92_I20221231" decimals="-5" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE3NTU_647dc6e6-6371-4ce6-89c7-e4d23ff7d670">304.5</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="id7e0272766e042deb09c8d7bf29912bf_I20211231" decimals="-5" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE3NjI_c9f20228-dcb4-4b2c-b7fe-0d22fa45e5cb">369.3</ix:nonFraction> million of availability under the revolving credit facility as of December 31, 2022 and 2021, respectively.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:ScheduleOfInterestCashPaymentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE5NTY_240b7f8d-fd1c-4495-a7e8-2f855adb2c04" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total cash paid for interest in the years ended December&#160;31 was (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:59.133%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.765%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.623%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzEtMS0xLTEtNzg2MDg_51be01f4-5291-4c96-ac37-b15a333d34e5">4,047</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzEtMy0xLTEtNzg2MDg_56acc200-b7c6-40f0-9b7f-14aca3c57b1e">1,639</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzEtNS0xLTEtNzg2MDg_ba3b28f7-e63d-4b93-a5fa-e7b7620a22a8">703</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:InterestIncomeOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzItMS0xLTEtNzg2MDg_3cb4e1ad-bc65-4017-87e1-164b63dec451">174</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:InterestIncomeOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzItMy0xLTEtNzg2MDg_7875573a-6fda-4e51-8274-80f40147a7dd">269</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:InterestIncomeOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzItNS0xLTEtNzg2MDg_8fb6e4e1-57f9-459e-9032-baaea282beff">276</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-cash adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="rock:NoncashInterestAdjustment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzMtMS0xLTEtNzg2MDg_b6b79f3c-ab68-4773-be5e-94be815852b1">679</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="rock:NoncashInterestAdjustment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzMtMy0xLTEtNzg2MDg_a4cf3d8a-bb92-4a57-9551-c2add1a8e269">345</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="rock:NoncashInterestAdjustment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzMtNS0xLTEtNzg2MDg_ac9f9c97-c01b-49c7-8125-2e3e61f19ab7">345</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for interest</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzQtMS0xLTEtNzg2MDg_1b4df867-3883-43a5-9516-b21ecd2d774c">3,542</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzQtMy0xLTEtNzg2MDg_8b79a2ba-6f27-487b-8bf5-2077f1703d26">1,563</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:InterestPaidNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzQtNS0xLTEtNzg2MDg_35f0564a-c702-4451-b821-305b4539bdc1">634</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_115"></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(10) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:PostemploymentBenefitsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMjQ_f4577824-af78-4e2f-848e-86467e4db11f" continuedAt="i2f2f2672b09542009c6d4922540909e5" escape="true">PENSION AND OTHER POSTRETIREMENT BENEFITS</ix:nonNumeric></span></div><ix:continuation id="i2f2f2672b09542009c6d4922540909e5" continuedAt="idd1eff91313b475c8df932ba073ec7fb"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has a 401(k) plan which all employees of U.S. subsidiaries are eligible to participate.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company contributes to a multiemployer defined benefit pension plan under the terms of a collective-bargaining agreement that covers union-represented employees.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has an unfunded postretirement healthcare plan which provides health insurance to certain employees and their spouses upon retirement. This plan has been frozen and no additional participants will be added to the plan in the future.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzNTU_891bb8ed-2bf1-4e41-aec7-8aaf6c65a829" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total expense for all retirement plans for the years ended December&#160;31 was (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.075%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.449%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401(k) plan</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i76b0f0e268d043b09e73783a49354a64_D20220101-20221231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzEtMi0xLTEtNzg2MDg_d5602f3c-e4b3-424c-8095-f94110a7c997">3,580</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief7806189c624d50965f724b3ad91ac6_D20210101-20211231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzEtNC0xLTEtNzg2MDg_747ee12d-d71f-4b1b-84b1-e4517e970701">3,196</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if8d8c6e9addc4a84ab0953c320143ea7_D20200101-20201231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzEtNi0xLTEtNzg2MDg_7f809d5c-b7f5-430e-9563-2fc2e06f42ab">2,403</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Multiemployer and other defined benefit and pension plans</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idf8b2e4b662e4079a2de5600f10962ee_D20220101-20221231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzItMi0xLTEtNzg2MDg_324890c7-d006-4e65-958c-ad63abc9bf2d">79</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8bc76c5e5bc4472888c9c5bffaf2af46_D20210101-20211231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzItNC0xLTEtNzg2MDg_ba9ccb7f-556a-4a9a-80ad-d220d0f4a74f">78</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec3c4084131b4c27ac59fe2752c82bd7_D20200101-20201231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzItNi0xLTEtNzg2MDg_154e5742-fb8c-4712-8735-adcde41dc7ec">70</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Postretirement healthcare plan</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzMtMi0xLTEtNzg2MDg_6bac1305-7467-400c-9fb2-80fd738d5466">342</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzMtNC0xLTEtNzg2MDg_2b3cd61a-87f8-40dd-a4ee-d2e88dc2ce75">411</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzMtNi0xLTEtNzg2MDg_dcbdd531-4aef-412a-8411-86af0c055824">351</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total retirement plan expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzQtMi0xLTEtNzg2MDg_d0fb924e-11ec-4927-94a1-d105edcea40b">4,001</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzQtNC0xLTEtNzg2MDg_56d79afd-425b-493d-9f92-2b54f758a61b">3,685</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:PostemploymentBenefitsPeriodExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzQtNi0xLTEtNzg2MDg_36b12b19-26d5-465f-a564-a78603ac82b2">2,824</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's <ix:nonFraction unitRef="plan" contextRef="i775ce2acfd4f479eb91079a2f9fcd0a6_I20221231" decimals="INF" name="rock:RetirementPlanNumberOfPlans" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzY3OA_51d6843a-9368-4fac-90d5-d64d3e941d36">one</ix:nonFraction> multiemployer plan is underfunded and has a rehabilitation plan in place. The rehabilitation plan requires minimum contributions from the Company. Given the status of this plan, it is reasonably possible that future contributions to the plan will increase although the Company cannot reasonably estimate a possible range of increased contributions as of December&#160;31, 2022.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">55</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="idd1eff91313b475c8df932ba073ec7fb" continuedAt="if32f76b413c3472fa9884836c991e1ee"><ix:nonNumeric contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" name="us-gaap:ScheduleOfNetFundedStatusTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMzY_5baeb654-8305-4caa-b36f-acca7ef77a4e" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the changes in the accumulated postretirement benefit obligation related to the Company&#8217;s unfunded postretirement healthcare benefits at December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:62.976%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.495%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.496%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projected benefit obligation at January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEtMS0xLTEtNzg2MDg_f4b6c148-7d0d-4f55-80e8-d9203dd71918">6,202</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3a361c2e35a94f0299b5ad792874480e_I20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEtMy0xLTEtNzg2MDg_eb7779b3-d919-4de3-871e-b4ab93d63f14">6,443</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzMtMS0xLTEtNzg2MDg_13f0c7f0-4e49-4ef6-8a13-39ef12964c74">127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzMtMy0xLTEtNzg2MDg_05162720-2763-4d44-9bc1-ff19003acb00">125</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Plan amendments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAmendments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzQtMS0xLTEtNzg2MDg_9e77d8d5-df89-4dec-9062-f34de45b5baa">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAmendments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzQtMy0xLTEtNzg2MDg_65551877-e538-409e-9ad0-59fa38af0d50">162</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Actuarial gain</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzUtMS0xLTEtNzg2MDg_7e09c2bd-94ae-4109-8d02-f00de2268a1f">1,784</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzUtMy0xLTEtNzg2MDg_99d6b8ec-00c9-47d5-ae4a-91b3137fba8c">200</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefits paid, net of contributions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzYtMS0xLTEtNzg2MDg_0608d365-5683-40cf-a044-86ce2806f8d9">316</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzYtMy0xLTEtNzg2MDg_f6e1c4e1-1dda-46a3-be2a-b5ac25d4bed9">328</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projected benefit obligation at December&#160;31</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzctMS0xLTEtNzg2MDg_73dcfcb9-0a5c-4903-8bf2-e4ea4c2b02a1">4,229</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzctMy0xLTEtNzg2MDg_30fcba75-9f1a-477e-9380-9d26cca109c9">6,202</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of plan assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzgtMS0xLTEtNzg2MDg_07508fb6-955c-4bff-812b-858210ee57ac">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzgtMy0xLTEtNzg2MDg_810f06c6-c5e7-4290-a788-8a918a8b0dd3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Under funded status</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanFundedStatusOfPlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzktMS0xLTEtNzg2MDg_69f7caaf-e0ec-4786-9057-10783ff69e46">4,229</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanFundedStatusOfPlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzktMy0xLTEtNzg2MDg_518e0950-c0f2-46b7-956e-b30ba9bbe715">6,202</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unamortized prior service cost</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEwLTEtMS0xLTc4NjA4_645c2cbc-848b-4775-9ae4-373c59508e47">352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEwLTMtMS0xLTc4NjA4_fe13ee53-68ee-4d89-8ece-0f84fd391c07">412</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized actuarial (gain) loss</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzExLTEtMS0xLTc4NjA4_a12c42e6-26c5-4cd2-a388-709c9476122e">278</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzExLTMtMS0xLTc4NjA4_4e1aa7af-9762-4951-a74a-a0cd86d57b3c">1,530</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount recognized</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEyLTEtMS0xLTc4NjA4_844fed0b-f198-43ca-818e-31c79902852a">4,155</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEyLTMtMS0xLTc4NjA4_cb92c0a8-e6ea-4c87-a4ee-7ce396f07470">4,260</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMTM_417daa33-caf9-4fa0-b892-ae6c382a98fb" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts recognized in the consolidated financial statements consisted of (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:62.788%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.592%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued postretirement benefit liability:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzItMS0xLTEtNzg2MDg_9d5fb53c-0177-4672-b096-4104d4b488e4">353</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" name="us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzItMy0xLTEtNzg2MDg_19188aaf-8cf7-4f09-b745-f6e2721b640f">358</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long term portion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzMtMS0xLTEtNzg2MDg_6f3a29c4-df8d-42f0-8be1-a8a29ecfd1a5">3,876</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" name="us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzMtMy0xLTEtNzg2MDg_7cade8d6-0196-4e0e-b72f-2663dc018c4c">5,844</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pre-tax accumulated other comprehensive loss &#8211; unamortized post-retirement healthcare costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzQtMS0xLTEtNzg2MDg_4113f3db-3094-4012-a2a2-880758749282">74</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzQtMy0xLTEtNzg2MDg_aca24189-3671-4bf9-bdcd-4838aa06ba0a">1,942</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount recognized</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzUtMS0xLTEtNzg2MDg_7b64f672-8d1a-49a6-bbe1-8297bc387dcf">4,155</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzUtMy0xLTEtNzg2MDg_646b7912-d65c-4db5-81ac-349b5ba688e7">4,260</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The measurement date used to determine postretirement benefit obligation measures was December&#160;31.</span></div><ix:nonNumeric contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" name="us-gaap:ScheduleOfNetBenefitCostsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMTQ_be07de8b-26a4-43b9-b796-223905d5dcf0" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of net periodic postretirement benefit cost charged to expense for the years ended December&#160;31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Service cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEtMS0xLTEtNzg2MDg_2fbc4b21-5a85-4b2a-b4ad-ddf2ba40fe7c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEtMy0xLTEtNzg2MDg_4b2f4f85-e900-4801-9b3c-6540788ffbba">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEtNS0xLTEtNzg2MDg_276e76e9-0baa-4f71-b004-d76f61ee425b">10</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzItMS0xLTEtNzg2MDg_7ba6b536-f8c0-4e38-9c07-d5d91d3a666f">127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzItMy0xLTEtNzg2MDg_5e01e4d3-f12b-437d-b61a-518a6b5b7f81">125</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzItNS0xLTEtNzg2MDg_f9e440a9-a17f-48b1-8fb6-3ae233f3cd79">172</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of unrecognized prior service cost</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzMtMS0xLTEtNzg2MDg_2a7a0de6-eb4d-4868-adb0-e38830916668">60</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzMtMy0xLTEtNzg2MDg_8a2366e6-e17f-40ae-b902-0c54afa95ca1">44</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzMtNS0xLTEtNzg2MDg_b707c941-64f0-4b75-8bee-48fdbda1e336">44</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss amortization (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzQtMS0xLTEtNzg2MDg_cc572d2a-bf96-4ecc-8d03-dd59852f15d0">24</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzQtMy0xLTEtNzg2MDg_99a124b9-789b-43b5-8d64-3c573cbb46a3">113</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzQtNS0xLTEtNzg2MDg_e34495fc-8a6b-4e93-8e57-2b30d1cdc281">64</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzUtMS0xLTEtNzg2MDg_196f9558-aba3-4ea7-9c74-bb342aa7912c">211</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzUtMy0xLTEtNzg2MDg_300b78c5-ef25-4936-8b93-8c823e6fb190">282</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzUtNS0xLTEtNzg2MDg_32eed337-b680-4ee3-b265-9b53c4c84337">290</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assumptions used to calculate the benefit obligation:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="3" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzctMS0xLTEtNzg2MDg_14bec2ef-9c8d-4c26-a1ab-99108138cca9">4.8</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231" decimals="3" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzctMy0xLTEtNzg2MDg_94192029-a088-4fa2-a802-b397d1fb29d1">2.4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i3a361c2e35a94f0299b5ad792874480e_I20201231" decimals="3" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzctNS0xLTEtNzg2MDg_83d6d64a-b81b-4a42-b838-0d5283fee700">2.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Annual rate of increase in the per capita cost of:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Medical costs before age 65 (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzktMS0xLTEtNzg2MDg_84de13f7-3dad-489a-8517-7e75f73df57c">7.8</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzktMy0xLTEtNzg2MDg_02c04d25-ee0d-4bb2-81ae-3aa6512da0d3">7.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzktNS0xLTEtNzg2MDg_f828590b-d5b2-4ccf-a623-2eeec906cc70">7.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Medical costs after age 65 (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEwLTEtMS0xLTc4NjA4_2391280f-1c23-45a1-82ea-4e33bbb01de6">4.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEwLTMtMS0xLTc4NjA4_0eea4cff-7dd5-43af-b0c6-c3627404f93f">4.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEwLTUtMS0xLTc4NjA4_901751ad-3228-411b-810e-161fbfe3ad80">4.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prescription drug costs (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzExLTEtMS0xLTc4NjA4_c552d311-431b-46b5-b7e7-9ed98434734e">7.8</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzExLTMtMS0xLTc4NjA4_3f05ba1a-722d-4ea0-919c-da880d331f5e">7.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231" decimals="3" name="rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzExLTUtMS0xLTc4NjA4_ee7661fd-8b14-4e80-90c0-708a9d7773e0">7.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)  For 2022, it was assumed that these rates would gradually decline to <ix:nonFraction unitRef="number" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="3" name="us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzE2NDU_4cd03d41-e2d8-4406-a2b0-e5b8f5f7c181">4.0</ix:nonFraction>% by 2075.  For 2021 and 2020, it was assumed that these rates would gradually decline to <ix:nonFraction unitRef="number" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="3" name="us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzMyOTg1MzQ4ODU4NTc_076ad831-93b1-4ccc-969b-d332966e0dd6"><ix:nonFraction unitRef="number" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="3" name="us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzMyOTg1MzQ4ODU4NTc_6fed2984-ef95-4315-a649-1a251b33a375">3.8</ix:nonFraction></ix:nonFraction>% by 2075.</span></div><div style="padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)  Actuarial losses are amortized utilizing the corridor approach. Differences between actual experience and the actuarial assumptions are reflected in (gain)/loss. If the total net (gain) or loss exceeds 10 percent of the greater of the accumulated postretirement benefit obligation or plan assets, this excess must be amortized over the average remaining service period of the active plan participants. If most of the plan participants are inactive, the amortization period is the expected future lifetime of inactive plan participants.</span></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">56</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="if32f76b413c3472fa9884836c991e1ee"><ix:nonNumeric contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231" name="us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzNTQ_918231bf-cf6d-49b0-a69b-f83794558207" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Expected benefit payments from the plan for the years ended December&#160;31 are as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:24.010%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.060%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.913%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.060%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.060%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.060%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.733%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Years 2028 - 2032</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected benefit payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtMi0xLTEtNzg2MDg_e63ff005-a541-4db6-9c4f-c6514df7966b">353</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtNC0xLTEtNzg2MDg_ac656988-6222-47a4-9cea-bab336ea10f8">357</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtNi0xLTEtNzg2MDg_46e0731c-10d6-405b-97cd-a8ecef06f3a6">369</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtOC0xLTEtNzg2MDg_9f770d66-a822-4d98-9536-a4172320f409">359</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtMTAtMS0xLTc4NjA4_b143e47a-3c68-44b1-99a9-7da268ddf8a4">355</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtMTItMS0xLTc4NjA4_fe0c0195-3d62-499d-b090-df649da7cb9c">1,649</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_118"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(11) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ComprehensiveIncomeNoteTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90ZXh0cmVnaW9uOjdkM2NmMmQ2ZTQxNjQ5ZWNiZWE2ODE5YWMzNDg3NjBlXzQxOQ_261140c7-190c-41e8-a4ad-c257fd64e56f" continuedAt="id3d1ae8a9f4542eebf54e1e048729d98" escape="true">ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS)</ix:nonNumeric></span></div><ix:continuation id="id3d1ae8a9f4542eebf54e1e048729d98"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90ZXh0cmVnaW9uOjdkM2NmMmQ2ZTQxNjQ5ZWNiZWE2ODE5YWMzNDg3NjBlXzQxMQ_38ceab3b-448a-4e94-b675-f4c1e5bb4fbc" escape="true"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The cumulative balance of each component of accumulated other comprehensive income (loss) is as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:36.473%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.180%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.742%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.864%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.671%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.672%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Pre-Tax Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Tax (Benefit) Expense</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated Other Comprehensive Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i654d7b52bf0d44dcaadd0e6141fff694_I20201231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtMS0xLTEtNzg2MDg_3b716ecd-ba22-4239-8b96-42bc9a7e0d26">872</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic6fb3ef74a9748c9bf2a4943b8c9ce16_I20201231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtMy0xLTEtNzg2MDg_e50d6e71-77e4-42b5-a806-0672ef009832">2,426</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtNS0xLTEtNzg2MDg_e06c204a-aed1-4213-b47a-f37100520c9c">3,298</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" sign="-" name="rock:AccumulatedOtherComprehensiveIncomeLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtNy0xLTEtNzg2MDg_4e0d66f4-3c15-4448-a473-d7637e2f6f2d">837</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtOS0xLTEtNzg2MDg_037c05d7-f907-46b6-8946-4762266fe67c">2,461</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i52b6a2f097b04e359a67ed5126fb741d_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItMy0xLTEtNzg2MDg_919f1080-1257-4677-9a59-3492bcb5704f">179</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i52b6a2f097b04e359a67ed5126fb741d_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItNS0xLTEtNzg2MDg_5938b854-7254-4fd7-9e9e-46990a861b00">179</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItNy0xLTEtNzg2MDg_19fec171-71bf-4ae8-82e3-fad164e8f0d9"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItNy0xLTEtNzg2MDg_a0643f32-75ff-494a-a96a-2ce9354af97c">43</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItOS0xLTEtNzg2MDg_87496bb2-2b1e-43a2-a8fc-f588fa160b0f">136</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtMS0xLTEtNzg2MDg_f32a42b5-f7df-4bcb-83b2-5e3452ac14bc">2,512</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtNS0xLTEtNzg2MDg_f0247224-4247-44cc-98e9-a9bd59702067">2,512</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtNy0xLTEtNzg2MDg_010033a6-a47d-4bb0-b5b9-3ba576f19b7b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtOS0xLTEtNzg2MDg_fc345621-c932-4ce2-be95-a7b5abee46b3">2,512</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1db4e303323f4b4da1e32f1bd8fb3cef_I20211231" decimals="-3" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtMS0xLTEtNzg2MDg_f72f7f3b-d306-452b-96e8-ca4a4d629f58">1,640</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i93d83a6bef504435b7494d9cb5705de0_I20211231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtMy0xLTEtNzg2MDg_fdc70f65-7dfc-47ee-933e-76696a394642">2,247</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtNS0xLTEtNzg2MDg_b9d4c703-2f59-4528-bb32-29f936fa06fd">607</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" sign="-" name="rock:AccumulatedOtherComprehensiveIncomeLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtNy0xLTEtNzg2MDg_f431e2ea-d00a-4139-86f2-9a4d99288317">794</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtOS0xLTEtNzg2MDg_8975a487-eb9c-4dfd-9efe-d4f8c1218070">187</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05311f8972a44dfaae02e04365ab7ed8_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtMy0xLTEtNzg2MDg_8dcbafcf-71d0-479f-b7da-784a98c10bf9">1,852</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05311f8972a44dfaae02e04365ab7ed8_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtNS0xLTEtNzg2MDg_cc2ea386-b64e-475e-ba30-2a0312f409c7">1,852</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtNy0xLTEtNzg2MDg_09438386-7251-4533-a6cb-492561c59098"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtNy0xLTEtNzg2MDg_95104e0b-6155-4a40-ba9c-83db25a87cdf">449</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtOS0xLTEtNzg2MDg_64206d11-72b7-4beb-82cb-9791bfc6862b">1,403</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtMS0xLTEtNzg2MDg_a2c0635d-1585-496c-bef2-b727ff1ba950">5,022</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtNS0xLTEtNzg2MDg_45461f20-953c-42b3-a976-697e4e72e6a6">5,022</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtNy0xLTEtNzg2MDg_0dea8f7a-1c44-4bcf-9780-52ae26d181ab">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtOS0xLTEtNzg2MDg_f3b38e70-1eff-4fa7-8db4-c0ca954ec333">5,022</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i07485c38abca452bab5802afcd841a70_I20221231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctMS0xLTEtNzg2MDg_a36dfc09-beab-4177-a8d6-7484a99ca512">3,382</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i05d994f7a8304ca09d7a49628f1e46fd_I20221231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctMy0xLTEtNzg2MDg_b4f8b485-5c76-4be6-9b55-6e83a97ebcad">395</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctNS0xLTEtNzg2MDg_84ea1fc3-816a-4a74-89d1-e6e5c8f1ca45">3,777</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" sign="-" name="rock:AccumulatedOtherComprehensiveIncomeLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctNy0xLTEtNzg2MDg_dd0023b6-1cb8-4d59-bac0-fa78e80e51b1">345</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctOS0xLTEtNzg2MDg_0e450346-0d7a-42d0-93d3-146210f8b61b">3,432</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The realized adjustments relating to the Company&#8217;s minimum post retirement health care costs were reclassified from accumulated other comprehensive loss and included in other expense in the consolidated statements of operations.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_121"></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(12) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNzM_4b6d231a-656b-42ff-b341-1cfa67ce447b" continuedAt="ie4c133d56a8f4c74afe6fbe804345302" escape="true">EQUITY-BASED COMPENSATION</ix:nonNumeric></span></div><ix:continuation id="ie4c133d56a8f4c74afe6fbe804345302" continuedAt="i5b443b03149f4c7e9347d19beb5ad5c6"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company awards equity-based compensation to employees and directors, which is recognized in the statements of operations based on the grant-date fair value of the award. The Company uses the straight-line method for recording compensation expense over a vesting period generally up to <ix:nonNumeric contextRef="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyNQ_8dfb563b-1cc5-4956-9dc3-27a510473abb">four years</ix:nonNumeric> with either graded or cliff vesting. Stock compensation expense recognized during the period is based on the value of the portion of equity-based awards that is ultimately expected to vest during the period reduced by the expense on unvested awards forfeited during the period. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 4, 2022, the stockholders of the Company approved the adoption of the Gibraltar Industries, Inc. Amended and Restated 2016 Stock Plan for Non-Employee Directors ("Non-Employee Directors Plan") which increases the total number of shares for issuance by the Company thereunder from <ix:nonFraction unitRef="shares" contextRef="i9dc15d7b762f4f8786fc2f0819ef131a_I20220503" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTMwMzU_4ca23889-3296-49b6-81d0-fd56ce7d5fb8">100,000</ix:nonFraction> shares to <ix:nonFraction unitRef="shares" contextRef="if70f323d342048b0aff53344ac311523_I20220504" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTMwNDQ_2213beb3-21ff-445c-a47a-afc68f014092">200,000</ix:nonFraction> shares, allows the Company to grant awards of shares of the Company's common stock to current non-employee Directors of the Company, and permits the Directors to defer receipt of such shares pursuant to the terms of the Non-Employee Directors Plan. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 4, 2018, the shareholders of the Company approved the adoption of the Gibraltar Industries, Inc. 2018 Equity Incentive Plan (the "2018 Plan"). The 2018 Plan provides for the issuance of up to <ix:nonFraction unitRef="shares" contextRef="i35da7e2535974c3f985d4aa66244b262_I20180504" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgwNw_101ce3e0-0ddc-4b05-9ab5-70a88d8ba0dc">1,000,000</ix:nonFraction> shares of common stock and supplements the remaining shares available for issuance under the existing Gibraltar Industries, Inc. 2015 Equity Incentive Plan (the "2015 Plan"). The Company's 2005 Equity Incentive Plan (the "Prior Plan") was amended in 2015 to terminate issuance of further awards from the Prior Plan. Both the 2018 Plan and the 2015 Plan allow the Company to grant equity-based incentive compensation awards, in the form of non-qualified options, restricted shares, restricted stock units, performance shares, performance stock units, and stock rights to eligible participants. </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">57</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i5b443b03149f4c7e9347d19beb5ad5c6" continuedAt="i95d680b717e944ba87f8635dd072a477"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2022, approximately <ix:nonFraction unitRef="shares" contextRef="i333f727333a74cf8835cfdc0d0bf40da_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzE4Mzc_8954f9a0-1cb2-49ac-ad8d-d8083c0bf1dc">326,000</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="i37da9a71b45e47bda80c54f802690cb3_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzE4NDQ_9deef369-e8a6-41a2-8331-9478e7c39373">80,000</ix:nonFraction> shares were available for issuance under the 2018 Plan and 2015 Plan, respectively, as incentive stock options or other stock awards, and approximately <ix:nonFraction unitRef="shares" contextRef="ife54428f5bae415a958afbba89deb379_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzE5OTk_c5923555-c136-4948-aa20-2a220650852d">101,000</ix:nonFraction> shares were available for issuance under the Non-Employee Directors Plan as awards of shares of the Company's common stock.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNzU_7466ac7b-2a04-4508-a487-395e850ea6d2" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized the following compensation expense in connection with awards that vested under the 2018 Plan, the 2015 Plan, the Prior Plan, and the Non-Employee Directors Plan along with the related tax benefits recognized during the years ended December 31 (in thousands):</span></div><div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:59.047%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.694%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.694%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.695%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the Prior Plan</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderTerminatedPlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzEtMS0xLTEtNzg2MDg_69c75c4f-9864-4704-a58f-60ef1c289193">19</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderTerminatedPlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzEtMy0xLTEtNzg2MDg_ae69d43d-9c85-480d-8933-db7a45523bda">29</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderTerminatedPlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzEtNS0xLTEtNzg2MDg_da8a01b8-f749-4b05-a30f-fb07431a3830">40</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the 2015 Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if3b28f29f8654fb38644d2e8f5a6c7bb_D20220101-20221231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzItMS0xLTEtNzg2MDg_896f63ca-f2fe-413c-a824-86243aa13a37">1,617</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i521f14e0f444475cba6d0358136ce841_D20210101-20211231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzItMy0xLTEtNzg2MDg_027603d1-a2b9-4d68-98b5-8185e2f74040">1,186</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaf596457fd2842ff8d756f74b142b118_D20200101-20201231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzItNS0xLTEtNzg2MDg_6afe2bd7-2098-41d6-8c25-534840f0ba3e">1,932</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the 2018 Plan</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i87a3975702e24b0a8e506f6418b4d8e5_D20220101-20221231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzMtMS0xLTEtNzg2MDg_2df244d6-ef46-4a8b-b142-1b62525eeb96">5,928</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca3a95410fc4aadbabbe31d8a1fb927_D20210101-20211231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzMtMy0xLTEtNzg2MDg_c054ef1c-4e53-4693-b1be-99082da1a646">6,597</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i12732f10c82a4193ae08cd52a26c3ea5_D20200101-20201231" decimals="-3" name="rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzMtNS0xLTEtNzg2MDg_127c4ab1-bf4e-4a6e-9fc3-aa52e0d82cdb">5,441</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the Non-Employee Directors Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzQtMS0xLTEtNzg2MDg_18b8ff0c-9c57-4c32-a184-38298f69dbe4">770</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzQtMy0xLTEtNzg2MDg_873f84d6-e07b-4112-aaa5-891067f31184">840</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzQtNS0xLTEtNzg2MDg_ec262264-f500-43eb-a389-28d114d1fa03">760</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stock compensation expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzUtMS0xLTEtNzg2MDg_a3e2277c-f4e7-47b3-9507-0fcc9e7819e8">8,334</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzUtMy0xLTEtNzg2MDg_a1ecbde3-00c0-4dfd-9310-b8e89257639e">8,652</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzUtNS0xLTEtNzg2MDg_ec5cb6f1-0c01-4d35-b925-9afbab24b2b8">8,173</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tax benefits recognized related to stock compensation expense</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzYtMS0xLTEtNzg2MDg_b349cb12-676e-43dc-8770-283e124262b1">2,175</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzYtMy0xLTEtNzg2MDg_f0d9095d-52a0-4e4f-97c5-e3ae337d5b7b">2,189</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzYtNS0xLTEtNzg2MDg_1e96bae5-5e98-4023-ab57-745693da9c59">2,272</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Equity Based Awards - Settled in Stock</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNTA_e8a5b409-0f30-4b7f-b948-c7854a96af04" escape="true"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the number of stock units and common stock granted during the years ended December&#160;31, along with the weighted-average grant-date fair value of each award:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:27.199%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.457%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.776%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.457%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.776%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.457%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.780%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Awards</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred stock units</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib9cc28d5b75e49d5b3ae72b6c80a4ee8_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtMS0xLTEtNzg2MDg_0dccfbc1-ad06-4842-9d42-525654d62118">2,460</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ib9cc28d5b75e49d5b3ae72b6c80a4ee8_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtMy0xLTEtNzg2MDg_609572c9-d723-44d7-8847-4a3c4ece6c70">42.69</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ie72e3ce0a04b4a80a0eb5f9927d670b9_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtNS0xLTEtNzg2MDg_85f0dd6a-e992-4ebc-b9d8-c75c5cda5d73">7,536</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ie72e3ce0a04b4a80a0eb5f9927d670b9_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtNy0xLTEtNzg2MDg_7bc85410-8914-4b84-9da3-7832374a3959">83.58</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i618d03ede4c34f7b8d844297505d0164_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtOS0xLTEtNzg2MDg_89d2d117-7aee-4db2-8ec5-8db2de1e1bbd">12,402</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i618d03ede4c34f7b8d844297505d0164_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtMTEtMS0xLTc4NjA4_7495edd0-e9ed-4793-9278-efc288fda21b">45.98</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Common stock</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ief83552b648c4de7913784604ee97941_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtMS0xLTEtNzg2MDg_6ebe628a-37f0-404a-b65f-89ee43f42877">15,652</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ief83552b648c4de7913784604ee97941_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtMy0xLTEtNzg2MDg_129f314f-3f15-43c0-97bf-51a29cc4e35d">42.49</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iae23fedcddf44d979e42f2c38a732827_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtNS0xLTEtNzg2MDg_41d94132-0432-454d-a328-7ff33e6fa658">2,512</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="iae23fedcddf44d979e42f2c38a732827_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtNy0xLTEtNzg2MDg_e87f195c-02fe-462f-9f6a-557d67e16e48">83.58</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if43a4604c74848759a8bbab4e6a81aa6_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtOS0xLTEtNzg2MDg_f70543fd-0d6b-4d88-b5a8-48705df2e027">4,134</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="if43a4604c74848759a8bbab4e6a81aa6_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtMTEtMS0xLTc4NjA4_b330cc88-9f70-4204-95b7-17d39af2e6c7">45.98</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1c774c478e0844d99442be11dc41033e_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtMS0xLTEtNzg2MDg_fba6e445-bebd-4436-9c0d-f2d7a3ea93d7">132,430</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i1c774c478e0844d99442be11dc41033e_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtMy0xLTEtNzg2MDg_267e6631-5393-415f-91a6-c01786a59b92">43.92</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4827d903d760472d9a8e5693de24307a_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtNS0xLTEtNzg2MDg_ff5c4485-d983-4779-9f14-be755a90f3f8">72,243</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4827d903d760472d9a8e5693de24307a_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtNy0xLTEtNzg2MDg_797c7264-19be-4097-ae28-140fc61a8c52">79.28</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i545d62b1a6f547d9ae836c5783f14e37_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtOS0xLTEtNzg2MDg_9677008b-26a4-484e-b84e-71f67069e8fe">81,397</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i545d62b1a6f547d9ae836c5783f14e37_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtMTEtMS0xLTc4NjA4_ee7abdab-3fec-4803-883e-e921664595ec">56.81</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Performance stock units (1)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8a478ce43a4d4484bef17790c569a64a_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctMS0xLTEtNzg2MDg_6c1f0810-71e7-4dea-a04a-b62b04fb8484">108,464</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i8a478ce43a4d4484bef17790c569a64a_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctMy0xLTEtNzg2MDg_661e9ef5-36a3-4663-b40f-01bfefdbc0a8">47.00</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i77e53b35d6674f12acacf8f09c3e49fd_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctNS0xLTEtNzg2MDg_81aa0596-c3b7-4af0-92c8-69d1bf1165a5">62,778</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i77e53b35d6674f12acacf8f09c3e49fd_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctNy0xLTEtNzg2MDg_d31c9260-943a-4f79-8952-a90b0bf1f597">87.84</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i3f01140fea6242ef9ade3e1ae480373d_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctOS0xLTEtNzg2MDg_8483ccd4-0c7f-4885-a552-2e6ce2278970">160,426</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i3f01140fea6242ef9ade3e1ae480373d_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctMTEtMS0xLTc4NjA4_81d1f70f-971d-45a6-bf7d-03778d8065ee">55.98</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;padding-left:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Company&#8217;s performance stock units (&#8220;PSUs&#8221;) represent shares granted for which the final number of shares earned depends on financial performance or market conditions.  The number of shares to be issued may vary between <ix:nonFraction unitRef="number" contextRef="i9c74c9e35f984b23a6aa3697439dec2f_D20220101-20221231" decimals="2" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ5MDE0Njg_c6a10f30-acdf-471d-84e7-44056121ad00">0</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i9f0fdc742d974a3a9e7921bd12764d57_D20220101-20221231" decimals="2" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ5MDE0NjI_00987231-3ce0-4e66-aa94-e00a5b5d7090">200</ix:nonFraction>% of the number of PSUs granted depending on the relative achievement to targeted thresholds.  The Company's PSUs with a financial performance condition are based on either the Company&#8217;s return on invested capital (&#8220;ROIC&#8221;) over a <ix:nonNumeric contextRef="id66b4e03f0e44ce19383390bbf30f112_D20220101-20221231" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3MzM_b92dff21-dbb2-41dd-baf6-04228905f348">one-year</ix:nonNumeric> period performance period or other criteria such as revenue, gross profit, and operating profit thresholds over a <ix:nonNumeric contextRef="iaf396751c7114ec9b112601dabb39141_D20220101-20221231" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3NDk_5a4cc1c5-26f1-4e8d-ba90-8479d0bd21a9">three-year</ix:nonNumeric> performance period.  The Company's PSUs with a market condition are based on the ranking of the Company&#8217;s total shareholder return (&#8220;TSR&#8221;) performance, on a percentile basis, over a <ix:nonNumeric contextRef="i6054511fdfeb4e00946479079f027f16_D20220101-20221231" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3NzY_115d33dd-1473-42eb-8593-5bd4ec6c87a2">three-year</ix:nonNumeric> performance period compared to the S&amp;P Small Cap Industrial sector, over the same <ix:nonNumeric contextRef="i6054511fdfeb4e00946479079f027f16_D20220101-20221231" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3Nzc_ba79274e-4db3-4fdd-b158-50e0be8d764b">three-year</ix:nonNumeric> performance period.</span></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Options</span></div><div style="margin-bottom:12pt;margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzI2NTQ_2d0b56eb-e809-49f5-8e70-14c7c6935835"><ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzI2NTQ_961fe677-069c-4d79-9bc2-f07fc2c88173"><ix:nonFraction unitRef="shares" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzI2NTQ_bb9ecbee-ec14-4653-b051-49866f3fc552">No</ix:nonFraction></ix:nonFraction></ix:nonFraction> options were granted during the years ended December 31, 2022, 2021 and 2020.  The Company determines the fair value of stock options granted based on the Black-Scholes option pricing model on the date of grant, and the expected stock volatility is based on volatility of the Company&#8217;s stock price using a historical period commensurate with the expected life of the options.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">58</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i95d680b717e944ba87f8635dd072a477" continuedAt="iea82e8f9bff4445ab74136da5a3ddfef"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2022, the Company has one grant of options outstanding.  <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNDQ_7ca47f51-34e7-4443-ac09-e78e6661e407" continuedAt="ibd9941ba75a541f89578652eee8749c2" escape="true">The following table summarizes the Company's outstanding and exercisable options at December&#160;31, 2022:</ix:nonNumeric></span></div><div style="margin-top:6pt"><ix:continuation id="ibd9941ba75a541f89578652eee8749c2"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:28.578%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.350%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.157%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.911%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.919%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options<br/>Outstanding</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Remaining<br/>Contractual Life<br/>(in years)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options<br/>Exercisable</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjpmZmMyOTdhMDYyZjA0ZmU3OTFmNGI2ZGI1M2E2NDY5Ml80_9813988c-c4a2-4caf-91a5-2ec39e4dab19">39.55</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i30eeb572360a444687cf4f1786455f4d_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtMi0xLTEtNzg2MDg_67961d4d-888d-4667-8c7d-e9222af3e7de">5,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtNC0xLTEtNzg2MDg_1dda88e1-4250-4c0f-940f-5dc85b337d29">4.26</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtNi0xLTEtNzg2MDg_50bd7386-7ffd-4f63-a9ae-a5137bd9712e">39.55</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i30eeb572360a444687cf4f1786455f4d_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtOC0xLTEtNzg2MDg_1225c110-458e-434a-b4b5-6c9b9d95e9d0">5,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i30eeb572360a444687cf4f1786455f4d_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtMTAtMS0xLTc4NjA4_1a0b4cf4-a8ba-4d31-bf06-76652f48db23">39.55</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxODM_7291b39e-b213-4590-bde9-8d08bcd529b0" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes information about stock option transactions:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:32.478%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.953%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.953%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.953%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.955%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Remaining Contractual<br/>Life (in&#160;years)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Aggregate<br/>Intrinsic&#160;Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at January&#160;1, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEtMS0xLTEtNzg2MDg_693f71ae-6311-4780-9df0-60d41e937ddc">117,409</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEtMy0xLTEtNzg2MDg_48737a15-12cb-4bad-8ced-97e088bc3f2b">19.91</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzMtMS0xLTEtNzg2MDg_9b18d1cf-a1c7-4b96-8bed-ca73b2de1e57">75,909</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzMtMy0xLTEtNzg2MDg_76a6dc72-b71e-457e-9d5b-163243488d18">14.73</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzUtMS0xLTEtNzg2MDg_3b9e0803-5556-4655-9187-73b577ada8a6">41,500</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzUtMy0xLTEtNzg2MDg_bb2fc9c7-71c8-4bf4-80b4-ddebe266a8f6">29.38</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzgtMS0xLTEtNzg2MDg_b84b47f8-6666-4cf5-8db5-fc9eee70607f">36,500</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzgtMy0xLTEtNzg2MDg_f7aec0e8-0036-4aed-a3a2-c261ef597b6d">27.99</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzktMS0xLTEtNzg2MDg_dd3a9d8b-b69a-47da-8998-2920c81fde8d">5,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzktMy0xLTEtNzg2MDg_a168a45f-021a-4b05-90ef-4c26395c8c13">39.55</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEwLTEtMS0xLTc4NjA4_1f17309d-5dbf-4243-9d72-54786756e944">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEwLTMtMS0xLTc4NjA4_62d60883-d908-441a-95c3-d4f40cfb8c14">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTEtMS0xLTc4NjA4_12dced3b-8402-4d8d-a319-4e3c4c0c6939">5,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTMtMS0xLTc4NjA4_cbd517a4-92d7-41e1-860a-c315ff142062">39.55</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTUtMS0xLTc4NjA4_9106b2a2-d658-4824-829d-85ddd5821af5">4.26</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTctMS0xLTc4NjA4_2527b689-0de1-4339-875f-7e7ba26754aa">31,650</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The aggregate intrinsic value in the preceding table represents the total pre-tax intrinsic value, based on the $<ix:nonFraction unitRef="usdPerShare" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="2" name="rock:MarketPriceOfCommonStockPerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyODI_0ed772e6-063c-43b6-8913-790cc2326d4c">45.88</ix:nonFraction> per share market price of the Company&#8217;s common stock as of December&#160;31, 2022, which would have been received by the option holder had the option holder with an exercise price below the per share market price on December&#160;31, 2022, exercised the options as of that date.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Units and Common Stock</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNTg_53673593-05a0-4255-a1d2-f933929c4df5" escape="true"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes information about non-vested restricted stock units and performance stock units (that will convert to shares upon vesting) and common stock:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.987%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.525%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.987%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.742%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.987%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.525%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.998%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Restricted<br/>Stock<br/>Units</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Performance<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Deferred<br/>Stock<br/>Units (2)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMS0xLTEtNzg2MDg_f0c2f5be-e684-47ed-a26b-8f987fd022b4">204,584</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMy0xLTEtNzg2MDg_1bdcf5b6-0da3-49d3-bd26-2723c2a3090e">52.90</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i38cae17618c143df862f8800ca9a3a77_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtNS0xLTEtNzg2MDg_93712b25-a719-4ae3-9d41-3d4a164263a8">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i38cae17618c143df862f8800ca9a3a77_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtNy0xLTEtNzg2MDg_244398a5-8266-4515-b9e2-df89a7be9e87">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i5231405b5fc7416abb675f49efbb9975_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtOS0xLTEtNzg2MDg_64718f54-b067-4c58-b537-5c3ef46e6750">363,474</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i5231405b5fc7416abb675f49efbb9975_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMTEtMS0xLTc4NjA4_3bc4d017-751f-4258-89c0-18619ec44598">55.44</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i0ad65e0eabf24a249dfefb2d94919c27_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMTMtMS0xLTc4NjA4_2720d5d7-4948-4422-ba34-ee9cc4433abe">52,472</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i0ad65e0eabf24a249dfefb2d94919c27_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMTUtMS0xLTc4NjA4_c6d85bf7-3378-44c6-9292-5f87e5655cdb">43.99</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMS0xLTEtNzg2MDg_71a62713-5285-4616-b2ea-c0cf351cb156">132,430</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMy0xLTEtNzg2MDg_db72935b-c01e-41f8-99e8-8a6147bbceee">43.92</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItNS0xLTEtNzg2MDg_f5edce2b-3f8f-4dfa-adbb-5710f9e551a1">15,652</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItNy0xLTEtNzg2MDg_acc3d65f-ae2c-4aac-8be0-a64c274792ba">42.49</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItOS0xLTEtNzg2MDg_55647461-142f-4499-ac5a-cdcc34e6eaf3">108,464</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMTEtMS0xLTc4NjA4_507c8f71-eccb-49b1-9862-903f790a113d">47.00</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMTMtMS0xLTc4NjA4_1434b25b-eb38-42b5-afd2-d89343198612">2,460</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMTUtMS0xLTc4NjA4_da04e7b8-3190-4ea2-940d-07406152c18f">42.69</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments (1)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="INF" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMS0xLTEtNzg2MDg_38ca8cb0-2320-43e0-a29c-81d4e3906923">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="2" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMy0xLTEtNzg2MDg_dbff5c0d-05a7-4be1-8871-d1c622fb6609">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="INF" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtNS0xLTEtNzg2MDg_7a01038c-de17-4faf-bbd9-1db1b536f958">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="2" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtNy0xLTEtNzg2MDg_a61da0e7-5586-4595-adef-f03ece4bbb5c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="INF" sign="-" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtOS0xLTEtNzg2MDg_ca48a2b1-4875-49f4-b7a7-86da66be9902">65,209</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="2" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMTEtMS0xLTc4NjA4_f1b16784-c0ad-4c90-a17f-283827c4edb9">82.75</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="INF" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMTMtMS0xLTc4NjA4_2d548c96-731e-4439-89b9-49c86372945e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="2" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMTUtMS0xLTc4NjA4_85a63870-639b-400f-8981-3d042e243f93">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMS0xLTEtNzg2MDg_50480738-b870-4e6f-bb53-e82a6bec5163">83,714</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMy0xLTEtNzg2MDg_29bfff5d-c103-4075-8588-2fcbb95beeec">45.77</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtNS0xLTEtNzg2MDg_0b9f0c14-32df-4974-a932-e395cfd535e8">15,652</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtNy0xLTEtNzg2MDg_eeb75874-e42f-44df-aa57-5ac1ad8fe9c4">42.49</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtOS0xLTEtNzg2MDg_35d55a6a-b1c3-4aa3-a0e7-69d1d7d07172">145,153</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMTEtMS0xLTc4NjA4_590a3904-2f57-4e83-82de-4bf077b12c6f">41.28</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMTMtMS0xLTc4NjA4_2a9b00d1-9de8-4a43-8fa2-aae3b5360e87">14,582</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMTUtMS0xLTc4NjA4_73de5eed-44ab-4b34-abcb-80325bc02153">40.53</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMS0xLTEtNzg2MDg_fcdfe210-fc82-40c8-b71c-4866fbe62783">17,930</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMy0xLTEtNzg2MDg_a8d22440-79d1-451e-ac95-adc3a2a49d02">59.62</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtNS0xLTEtNzg2MDg_5f153988-1ff9-4a7a-b9d2-87726be139b4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtNy0xLTEtNzg2MDg_abde98ca-0156-48a5-a679-28ce66f1112e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtOS0xLTEtNzg2MDg_608a854d-0556-474a-8859-e8aaa7e5c373">50,208</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i315cd57c109943679521192035347e33_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMTEtMS0xLTc4NjA4_d6321a92-9628-4959-bdb1-46e6c2942edb">61.51</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMTMtMS0xLTc4NjA4_310169f5-1f3b-4575-96af-60bb8b863c5c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMTUtMS0xLTc4NjA4_9d051059-bbd2-4924-b9b8-d36f4be676d7">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMS0xLTEtNzg2MDg_fedad4e4-84f1-4a69-a6b7-eab09ebe2a84">235,370</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMy0xLTEtNzg2MDg_1a6ea790-01be-4788-97b9-ddcfd603ce1b">49.87</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i42cbdaa65de645b6b771deddf4f01f16_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtNS0xLTEtNzg2MDg_ba343e70-8010-4f71-9c3c-8aaaa1616a1c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i42cbdaa65de645b6b771deddf4f01f16_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtNy0xLTEtNzg2MDg_e721dd03-138d-4c96-88b1-d48f43df62cd">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i90db669524424d7a93e78e1228bd42ad_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtOS0xLTEtNzg2MDg_7939689f-70aa-476c-bb0b-18cf01de4b2b">211,368</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i90db669524424d7a93e78e1228bd42ad_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMTEtMS0xLTc4NjA4_a289e4f8-9dc0-4ace-9158-17756e552459">50.96</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i60bd80b6b9a34d888f8c614f80a652f4_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMTMtMS0xLTc4NjA4_8c4406d1-80ca-409e-8d12-f5b5aaaf923b">40,350</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i60bd80b6b9a34d888f8c614f80a652f4_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMTUtMS0xLTc4NjA4_fa915580-4e1a-4e62-acd8-6b7ce18dc8c6">45.16</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;padding-left:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Company's PSU adjustments during 2022 represents (i) <ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="0" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3ODY_85334a4c-9ca3-4c33-81fa-1d544a23e940">55,959</ix:nonFraction> shares for which the performance condition was not achieved and the PSUs were adjusted in the first quarter of 2022 to reflect zero PSU earned as the threshold level of achievement was not met based on the Company's actual ROIC achievement level for the performance period ended December&#160;31, 2021 and (ii) <ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="0" name="rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3Nzk_0dc5ec47-2d25-457a-b24f-7cc6ba0b5c33">9,250</ix:nonFraction> shares not earned that related to two separate PSU awards granted in 2019 and 2020 that the threshold level of achievement based on other performance criteria as defined in the respective awards over a <ix:nonNumeric contextRef="i9ddd417da4ce430b8ed75fa12a9900d9_D20210101-20211231" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc4Mjc_8623876c-d801-4624-bb7f-9d3e663e11c6">two-year</ix:nonNumeric> or <ix:nonNumeric contextRef="i7d334fc11e7344ca8b41f2f79f4aaf39_D20210101-20211231" name="rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc4Mjg_5e2630a9-d487-4f25-b198-156b129d08ce">three-year</ix:nonNumeric> performance periods were not met for the performance periods ended December&#160;31, 2021.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2) Vested and issuable upon termination from service as a member of the Company's Board of Directors.</span></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">59</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="iea82e8f9bff4445ab74136da5a3ddfef"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of the common stock, restricted stock units, and deferred stock units, as well as the performance stock units with a financial performance condition granted during the three years ended December&#160;31, 2022 was based on the Company stock price at grant date of the award. The fair value of the performance stock units with a market condition granted during the three years ended December&#160;31, 2022 were determined using a Monte Carlo simulation as of the grant date of the award. The Company granted performance units with a market condition during 2020; however, <ix:nonFraction unitRef="shares" contextRef="i3c866d4a56934156867914a30d42747f_D20220101-20221231" decimals="0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzU4MTI_38ca2399-da77-4265-99b6-afb5770f6c4e"><ix:nonFraction unitRef="shares" contextRef="i9ec69f2a2f3d4689b1f34eddbae63b31_D20200101-20201231" decimals="0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzU4MTI_977c366e-2f47-44df-bb16-b559b51f8678">no</ix:nonFraction></ix:nonFraction> such awards were granted in 2022 and 2021. </span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNTM_4c1989cc-5928-4357-93c4-391cf58846d2" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the aggregate intrinsic value of options exercised and aggregate fair value of restricted stock units and restricted shares that vested during the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate intrinsic value of options exercised</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzEtMS0xLTEtNzg2MDg_6e2ca20c-735b-4949-957d-3cc5c2da91f5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzEtMy0xLTEtNzg2MDg_a665e446-5566-415c-9c26-b7ca79bf9836">2,103</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzEtNS0xLTEtNzg2MDg_c898e2f3-8bec-430d-8e4b-8b48193acd27">3,812</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested restricted stock units</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzItMS0xLTEtNzg2MDg_f8ddd4a0-c0b4-43db-8d38-4551790c858c">3,920</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9ea0ebadd87a4b54bda9ceb4768018cf_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzItMy0xLTEtNzg2MDg_963ef168-8c0b-44f8-902b-0d0d04368a35">6,320</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia734b50389e0476cb94df62ddbd4f9d5_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzItNS0xLTEtNzg2MDg_557e6a85-d92b-4e10-94d3-3ea05ab4d5e6">11,851</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested common stock</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzMtMS0xLTEtNzg2MDg_c7776aa8-69f4-4aa6-ba95-6611de1ec300">665</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icb1fe569d47f4fbbb55606ef73735d8f_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzMtMy0xLTEtNzg2MDg_7cb3a41e-4a46-4c3b-80af-bd413819c0d9">370</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4c5101685f264c21b84bba3b53c5b581_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzMtNS0xLTEtNzg2MDg_5c519f97-a9e4-42a9-9d4f-4d093eb868dd">190</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested performance stock units</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i67d73249f83a4f98ad9a4458048dbafc_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMS0xLTEtOTI0MTQ_23677b37-bc02-4abe-b8a9-760686d6706a">6,729</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e1e472787084d00b78ff903e7523e71_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMy0xLTEtOTI0MTQ_b7c30fff-e72a-43fc-a79c-00bae1b085af">9,080</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7671d74549b483f869621f804a9bf70_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtNS0xLTEtOTI0MTQ_79cf627b-e039-4604-baa9-d345f704a26a">4,197</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested deferred stock units</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMS0xLTEtNzg2MDg_6100f7b4-3805-42c1-b8fb-495a26642d19">105</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iae02fc9e4ad64cfba5c29bd54552416e_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMy0xLTEtNzg2MDg_21a7b736-93bc-41f0-8039-2333d8a3b103">630</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied78e4545b8d433e853fcab799ed452d_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtNS0xLTEtNzg2MDg_f47b3844-29f3-4429-bcdd-bcc5844536a3">570</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, there was $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU5MzY_abfe47ed-049b-4558-b896-21de65838d84">9.3</ix:nonFraction>&#160;million of total unrecognized compensation cost related to non-vested restricted and performance stock units. That cost is expected to be recognized over a weighted average period of <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzYyODU_60ea70fc-7130-4272-b7af-6193ee1e0fa4">2.3</ix:nonNumeric> years.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Equity Based Awards - Settled in Cash</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Management Stock Purchase Plan</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's equity-based awards that are settled in cash are the awards under the Management Stock Purchase Plan (the "MSPP") which is authorized under the Company's equity incentive plans.  The MSPP provides participants the ability to defer a portion of their compensation, convertible to unrestricted investments, restricted stock units, or a combination of both, or defer a portion of their directors&#8217; fees, convertible to restricted stock units. Employees eligible to defer a portion of their compensation also receive a company-matching award in restricted stock units equal to a percentage of their deferred compensation.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The deferrals and related company match are credited to an account that represents a share-based liability.  The portion of the account deferred to unrestricted investments is measured at fair market value of the unrestricted investments, and the portion of the account deferred to restricted stock units and company-matching restricted stock units is measured at a <ix:nonNumeric contextRef="i2b2e20c0caef44a882bfef5d6d426ccc_D20220101-20221231" name="rock:SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc4Mzk_1efec76f-8665-410c-b438-eb07674d2530">200-day</ix:nonNumeric> average of the Company stock price.  The account will be converted to and settled in cash payable to participants upon retirement or a termination of their service to the Company.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total MSPP liabilities recorded on the consolidated balance sheet as of December&#160;31, 2022 were $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY2MDY_54ffd373-1c2a-437c-b652-945c05764258">15.4</ix:nonFraction> million, of which $<ix:nonFraction unitRef="usd" contextRef="ifa220c5a25d849c99605773d3cf52640_I20221231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY2MTk_29b1eb61-3239-4212-9e43-31fce19bbd88">2.3</ix:nonFraction> million was included in current accrued expenses and $<ix:nonFraction unitRef="usd" contextRef="i4ddfeed1ae2842c68338f7d3a752ba37_I20221231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY2Njc_b809bed7-d8a0-45de-bdac-0975d473ade2">13.1</ix:nonFraction> million was included in non-current liabilities.  Total MSPP liabilities recorded on the consolidated balance sheet as of December&#160;31, 2021 were $<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY3NTY_555603ec-e9d9-4ce4-9bd0-30325bcf3a05">22.6</ix:nonFraction> million, of which $<ix:nonFraction unitRef="usd" contextRef="ic2f756bfa65a4c979874c5ef250317a0_I20211231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU2NzI_edaff17e-6aa9-432b-9e5c-71d3ee1260cd">2.9</ix:nonFraction>&#160;million was included in current accrued expenses and $<ix:nonFraction unitRef="usd" contextRef="i6dae7c6bf20a4152ac70cef8f60f448d_I20211231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY3Njk_7e13c6db-426f-4993-a5bd-4d7a1db0cef2">19.7</ix:nonFraction> million was included in non-current liabilities.  The value of the restricted stock units within the MSPP liability were $<ix:nonFraction unitRef="usd" contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU5MTE_b9b85f4f-f012-4faf-bbeb-f9c0bc3ae965">13.4</ix:nonFraction>&#160;million and $<ix:nonFraction unitRef="usd" contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231" decimals="-5" name="rock:AccruedEquityBasedCompensation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU4OTA_8e03453f-f651-4803-987e-0da553e42f0a">20.7</ix:nonFraction>&#160;million at December&#160;31, 2022 and 2021, respectively.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:CashPaidToSettleLiabilityAwardsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNDI_c636b32b-4a55-4230-8a47-2cae64d3eae4" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the number of restricted stock units credited to active participant accounts, balance of vested and unvested restricted stock units within active participant accounts, payments made with respect to restricted stock units issued under the MSPP, and MSPP expense during years ended December&#160;31:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units credited</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzEtMS0xLTEtNzg2MDg_b854c0c9-fbb5-4fe1-8810-7bac425b90d3">12,365</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9ea0ebadd87a4b54bda9ceb4768018cf_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzEtMy0xLTEtNzg2MDg_23405687-7002-48d2-b781-491f56e5bdfa">30,475</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia734b50389e0476cb94df62ddbd4f9d5_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzEtNS0xLTEtNzg2MDg_ed94501c-d915-4bcc-9465-e44bd5f92f30">57,046</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units balance, vested and unvested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzItMS0xLTEtNzg2MDg_591039c6-eeff-4cb3-8820-724e6456bfef">158,644</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzItMy0xLTEtNzg2MDg_c3092951-2cc9-4ffd-9fe8-82d7b3e8d194">223,892</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i165b9446497e4588a98219722216535c_I20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzItNS0xLTEtNzg2MDg_b6295892-5108-400f-9a99-924188c846d7">231,343</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share-based liabilities paid (in thousands)</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i17939686689243ebbbe2ee842d9ef194_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzMtMS0xLTEtNzg2MDg_5fce1093-fb4b-4acf-a956-a0d5d0cbedaa">3,689</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i930b4b829e46464d8b28d88edcec3ed6_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzMtMy0xLTEtNzg2MDg_18fa0530-6d5e-41ac-8b80-5db22896dc22">4,915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77e82f6fba44e7cbfb58c000d393766_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzMtNS0xLTEtNzg2MDg_8191f111-8c7d-4d2e-a7ee-97d01589ac54">15,401</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MSPP (recovery) expense (in thousands)</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie5f43f67274444859364f93c14051faf_D20220101-20221231" decimals="-3" sign="-" name="rock:ManagementStockPurchasePlanCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzQtMS0xLTEtNzg2MDg_f883119f-a426-4331-9233-3c5dd3c139f9">4,459</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iae9e35db404446b9860afc58484c10f9_D20210101-20211231" decimals="-3" name="rock:ManagementStockPurchasePlanCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzQtMy0xLTEtNzg2MDg_938f2956-df33-4c72-9d50-b18adf05397f">6,034</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic753417107234c3a8a4bd0b0e8e4c908_D20200101-20201231" decimals="-3" name="rock:ManagementStockPurchasePlanCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzQtNS0xLTEtNzg2MDg_06da08c9-df3b-4548-a93e-ecb93d31c48c">4,518</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">60</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_124"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(13) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:FairValueDisclosuresTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjQvZnJhZzo5OTc3ODdkNzIxNDk0YmM0ODMxNDAzNjhjNTVkMzE3My90ZXh0cmVnaW9uOjk5Nzc4N2Q3MjE0OTRiYzQ4MzE0MDM2OGM1NWQzMTczXzMxMTM_6d787180-ac99-458e-bbcf-9d71bc72b334" continuedAt="i2877f26d08fd408e94f8de154705f2a0" escape="true">FAIR VALUE MEASUREMENTS</ix:nonNumeric></span></div><ix:continuation id="i2877f26d08fd408e94f8de154705f2a0"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Depending on the nature of the asset or liability, various techniques and assumptions can be used to estimate fair value. A financial asset or liability&#8217;s classification within the hierarchy is determined based on the lowest level input that is significant to the fair value measurement as follows:</span></div><div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1 - Quoted prices in active markets for identical assets or liabilities. </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2 - Observable inputs other than quoted prices in active markets for similar assets and liabilities.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3 - Inputs that are unobservable inputs for the asset or liability.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had no financial assets or liabilities measured at fair value on a recurring basis and did not have any financial instruments for which carrying value differed from its fair value at December&#160;31, 2022 and 2021.  As of December 31, 2022, the Company had $<ix:nonFraction unitRef="usd" contextRef="i2e00a01d8de24157995e47b11966bd92_I20221231" decimals="-5" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjQvZnJhZzo5OTc3ODdkNzIxNDk0YmM0ODMxNDAzNjhjNTVkMzE3My90ZXh0cmVnaW9uOjk5Nzc4N2Q3MjE0OTRiYzQ4MzE0MDM2OGM1NWQzMTczXzEwMzQ_01c96fc3-b1e8-4ef4-98af-ca26657ebff7">91.0</ix:nonFraction>&#160;million outstanding on its revolving credit facility under its Credit Agreement.  The Company determined the carrying value of the outstanding balance on its revolving credit facility approximates fair value due to the variable market interest rate terms of the credit facility.  The Company had $<ix:nonFraction unitRef="usd" contextRef="id7e0272766e042deb09c8d7bf29912bf_I20211231" decimals="INF" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjQvZnJhZzo5OTc3ODdkNzIxNDk0YmM0ODMxNDAzNjhjNTVkMzE3My90ZXh0cmVnaW9uOjk5Nzc4N2Q3MjE0OTRiYzQ4MzE0MDM2OGM1NWQzMTczXzEzMzI_05085420-948d-497d-beca-a1f01420644e">24.5</ix:nonFraction>&#160;million outstanding on its revolving credit facility as of December 31, 2021.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s other financial instruments primarily consist of cash and cash equivalents, accounts receivable, notes receivable, and accounts payable.&#160; The carrying values for these financial instruments approximate fair value. The Company did not have any other material assets or liabilities carried at fair value and measured on a recurring basis as of December&#160;31, 2022 and 2021.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Other non-recurring fair value measurements</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recorded impairment of property, plant and equipment during the years ended December 31, 2022 and 2020, and recognized impairment charges related to certain intangible assets during the year ended December 31, 2021. The Company uses unobservable inputs, classified as Level 3 inputs, in determining the fair value of these assets. See Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments" for more disclosure regarding the impairment of certain intangible assets and property, plant, and equipment, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also applied fair value principles for the goodwill impairment tests performed during 2022, 2021, and 2020. The Company used two valuation models to estimate the fair values of its reporting units, both of which primarily use Level 3 inputs. See Note 7 "Goodwill and Related Intangible Assets" of the consolidated financial statements for the results of the Company&#8217;s goodwill impairment tests.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, the Company's recent acquisition activity, as described in Note 6 "Acquisitions," used Level 3 inputs to estimate fair values allocated to the assets acquired and liabilities assumed.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_127"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(14) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzI0MzA_b55ce41b-71d4-4174-acba-6970c4f209f4" continuedAt="i6e2c5b83e9214674bbf3563f46ffa86b" escape="true">HELD FOR SALE AND DISCONTINUED OPERATIONS</ix:nonNumeric></span></div><ix:continuation id="i6e2c5b83e9214674bbf3563f46ffa86b" continuedAt="i23e4e79052604282b516ae3f97344c93"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Held for Sale</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the first quarter of 2022, the Company committed to a plan to sell its Processing business (the "disposal group") which is a business within the Company's Agtech reportable segment. The planned sale does not meet the criteria to be classified as a discontinued operation.  As a result, the Company will continue reporting the operating results of the disposal group in the Company's consolidated operating results from continuing operations until the sale of the business is completed.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company classifies assets and related liabilities as held for sale when: (i) management has committed to a plan to sell the assets, (ii) the net assets are available for immediate sale, (iii) there is an active program to locate a buyer and (iv) the sale and transfer of the net assets is probable within one year. Assets and liabilities held for sale are presented in prepaid expenses and other current assets and accrued expenses on the Company's consolidated balance sheets with a valuation allowance to recognize the net carrying amount at the lower of cost or fair value, less costs to sell.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">61</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i23e4e79052604282b516ae3f97344c93" continuedAt="i097b5fa6b8f44a14a5580aa9927ae327"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 2022, the assets and liabilities of the disposal group have been classified as held for sale. <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzIxOTkwMjMyNzI2MjE_aab957c4-9f38-417c-aab5-73e0156734c3" continuedAt="i5bd5ab81abc949fcac938c42114b0b12" escape="true">The following table summarizes these assets and liabilities which have been measured at the lower of (i) the carrying value when classified as held for sale and (ii) the fair value of the business less costs to sell.</ix:nonNumeric></span></div><ix:continuation id="i5bd5ab81abc949fcac938c42114b0b12" continuedAt="i83c40b7af2754e68bfdb708083f8e3a5"><div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:74.338%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.854%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets held for sale</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net of allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzItMi0xLTEtOTE5NzU_9aa68bdb-3048-4078-b2fc-1e5af8e424a2">266</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories, net of reserves</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzMtMi0xLTEtOTE5NzU_4015ef63-dc93-4baf-807c-11be401f7b0a">6,748</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzQtMi0xLTEtOTE5NzU_f95951db-824d-4257-a7ae-93db18d0fe5e">1,999</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzUtMi0xLTEtOTE5NzU_d6b6ee18-644c-4daf-96b8-87f739f9752d">331</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="rock:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzYtMi0xLTEtOTE5NzU_2ff22014-b451-4958-87f4-351d18cf8b10">495</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzctMi0xLTEtOTE5Nzc_160a0a66-d4b5-4663-8c89-ca8e7a7cccfc">6,213</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzgtMi0xLTEtOTMyMDQ_2d636b90-035b-4ca2-9631-baf677e93432">13,990</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets held for sale</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzktMi0xLTEtOTE5Nzk_7acd5b65-5eec-4b9f-87c8-1bf692917f9d">2,062</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities held for sale</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzExLTItMS0xLTkxOTgx_ecea05e7-7df8-4606-b617-a6fba6df2adb">733</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzEyLTItMS0xLTkxOTgx_51398d6d-e5db-4b23-972e-4d0b2b6b09c7">1,159</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="rock:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzEzLTItMS0xLTkxOTgx_b59f3ac3-4e09-434c-b248-499ff73f767a">70</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities held for sale</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzE0LTItMS0xLTkxOTgx_f2c34084-a36e-450f-b325-3ea17f108af9">1,962</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales, operating loss and valuation allowance recorded for this disposal group for the years ended December 31 are as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:75.361%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:10.157%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.823%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.159%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzItNS0xLTEtOTE5ODc_113a2ffc-f2bc-4c0f-98b7-5626758af0f7">7,840</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if48290fab268427aad7de6ccfec05cff_D20210101-20211231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzItNy0xLTEtOTE5ODk_9f7591ac-de36-4130-86df-71e9fd878df1">20,328</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating loss</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzMtNS0xLTEtOTE5ODc_776e9b36-35ae-4205-9f72-87d76bcf8b7f">6,769</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if48290fab268427aad7de6ccfec05cff_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzMtNy0xLTEtOTE5ODk_a9123dcf-32c3-40c9-a8eb-b40830eba37b">3,539</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-3" name="rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzQtNS0xLTEtOTMyMDI_4f2d428f-fbae-4d46-af04-6f23b3caa4db">13,990</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i09954123688144c990bd164885fb1b93_I20211231" decimals="-3" name="rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzQtNy0xLTEtOTMyMDI_a1d20119-55ee-4c69-9387-f24a5b58a684">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Effective with the classification of the disposal group as held for sale, depreciation of property, plant, and equipment and amortization of finite-lived intangible assets and right-of-use assets are not recorded while these assets are classified as held for sale. As a result of the Company's evaluation of the recoverability of the carrying value of the assets and liabilities held for sale relative to an estimated sales price, adjusted for costs to sell, a valuation allowance of $<ix:nonFraction unitRef="usd" contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231" decimals="-6" name="rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzU0OTc1NTgyODg3Mw_0daba04f-034e-4f8b-92b7-1e6a03f63c4a">14.0</ix:nonFraction>&#160;million was recorded during the twelve months ended December 31, 2022 and has been presented within other expense (income) in the consolidated statements of operations. The recoverability of the disposal group will be evaluated each reporting period until the sale of the business is completed.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Discontinued Operations</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 23, 2021, the Company sold the stock of its Industrial business which had been classified as held for sale and reported as a discontinued operation in the Company&#8217;s consolidated financial statements for the years ended December 31, 2021 and 2020.  Net proceeds of $<ix:nonFraction unitRef="usd" contextRef="ic9662d503bf04b7a9318b1d725f12705_I20210223" decimals="-6" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzI4Nw_5a5282a0-e213-4be9-91f7-9dbde591b1eb">38</ix:nonFraction>&#160;million, consisting of cash and a $<ix:nonFraction unitRef="usd" contextRef="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223" decimals="-6" name="us-gaap:NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzMxNg_a2b2062d-9089-4320-b90e-c5179fdfc4bf">13</ix:nonFraction>&#160;million seller note, resulted in an estimated pre-tax loss of $<ix:nonFraction unitRef="usd" contextRef="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223" decimals="-6" sign="-" name="us-gaap:DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzM3Mw_9431ade1-f747-42d1-8ccf-af5861ed7e02">30</ix:nonFraction>&#160;million, subject to working capital and other adjustments, of which $<ix:nonFraction unitRef="usd" contextRef="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223" decimals="-5" sign="-" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzQzNg_cd320cd3-718a-4ee6-9bb8-0a7d0e3e4ff0">29.6</ix:nonFraction>&#160;million was recorded when the assets of the Industrial business were written down to fair market value during the fourth quarter of 2020.  The seller note was paid in full to the Company during the second quarter of 2021.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The results of operations of the Industrial business have been presented as a discontinued operation in the Company's consolidated financial statements for all periods presented.  The Company allocates interest to its discontinued operations in accordance with ASC Subtopic 205-20, &#8220;Presentation of Financial Statements &#8211; Discontinued Operations.&#8221; Interest was allocated based on the amount of net assets held by the discontinued operation in comparison to consolidated net assets.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">62</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i097b5fa6b8f44a14a5580aa9927ae327"><ix:continuation id="i83c40b7af2754e68bfdb708083f8e3a5"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the income (loss) from discontinued operations before taxes, including the interest allocated to discontinued operations, for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:50.800%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.115%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.961%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzEtMS0xLTEtNzg2MDg_238d1085-00c5-48c4-a403-3879562e7ba2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzEtMy0xLTEtNzg2MDg_6b3921c1-bc79-46fb-8a79-7a94a49cc32d">20,391</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzEtNS0xLTEtNzg2MDg_4c885b18-df78-4002-97f1-1413685f5827">128,915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzItMS0xLTEtNzg2MDg_b110742f-5f6a-4f63-abe3-f9dd4f35864d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzItMy0xLTEtNzg2MDg_0b5dd216-3018-464b-bca3-80e8446d1167">17,493</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzItNS0xLTEtNzg2MDg_8132d04c-32e6-4233-89c1-786e90e3b19e">115,822</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss and adjustments to loss on disposal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231" decimals="-3" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzMtMS0xLTEtNzg2MDg_00c0f2fc-1b89-4497-8b49-88314edda905">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzMtMy0xLTEtNzg2MDg_a15aa6e6-1f5f-4a4d-bd4e-e47bb517bff2">1,419</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzMtNS0xLTEtNzg2MDg_dd883e43-9ce8-4814-b8a3-284cb0338214">29,600</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense allocation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzQtMS0xLTEtNzg2MDg_5b6b051f-856c-4009-8cfa-97c67e58c069">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzQtMy0xLTEtNzg2MDg_2cfef7c8-0392-4855-a8ef-9de438c81f24">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzQtNS0xLTEtNzg2MDg_84b846d8-2b8c-4482-b3f1-9f9f6862aaa6">95</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations before taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231" decimals="-3" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzUtMS0xLTEtNzg2MDg_845a8d3e-f044-4be1-8b95-9d4b9a82bafb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231" decimals="-3" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzUtMy0xLTEtNzg2MDg_d958a21e-5bdc-44c3-9223-b7a8055b6253">1,479</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzUtNS0xLTEtNzg2MDg_e3c82231-529f-443c-9677-dbd5af05b789">16,602</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 30, 2020,  the Company sold its self-guided apartment tour application business to a third party from its Residential segment.  The $<ix:nonFraction unitRef="usd" contextRef="ib272e75884f9475f844fa8b4b9e2e0a9_D20200630-20200630" decimals="-5" name="us-gaap:ProceedsFromDivestitureOfBusinesses" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzIxMjQ_d64a5be4-ca74-4a9c-9ce9-7375c4eb62d2">2.0</ix:nonFraction>&#160;million net proceeds from the sale resulted in pre-tax net gain of $<ix:nonFraction unitRef="usd" contextRef="ib272e75884f9475f844fa8b4b9e2e0a9_D20200630-20200630" decimals="-5" name="us-gaap:GainLossOnSaleOfBusiness" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzIxODY_571ee737-8fb2-4f4c-ae3c-fc83a730252c">1.9</ix:nonFraction>&#160;million and has been presented within other expense (income) in the consolidated statements of operations.  This divestiture did not meet the criteria to be reported as a discontinued operation nor did it have a major effect on the Company's operations.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_130"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(15) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzE3ODM_1d81b883-1ac4-46d8-af57-bb66ed748403" continuedAt="ic193db7f23264c6bb208f1cbf0310f34" escape="true">EXIT ACTIVITY COSTS AND ASSET IMPAIRMENTS</ix:nonNumeric></span></div><ix:continuation id="ic193db7f23264c6bb208f1cbf0310f34" continuedAt="ia7239ffa32704b3ba4a32fe08df7c793"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has incurred exit activity costs and asset impairment charges as a result of its 80/20 simplification and portfolio management initiatives. These initiatives have resulted in the identification of low-volume, low margin, internally-produced products which have been or will be outsourced or discontinued, the simplification of processes, in the sale and exiting of less profitable businesses or products lines, and the reduction in the Company's manufacturing footprint.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exit activity costs were incurred during 2022 related to moving and closing costs, severance and contract terminations, along with asset impairment charges related to the write-down of inventory and impairment of machinery and equipment associated with discontinued product lines, as a result of process simplification initiatives.  In conjunction with these initiatives, in 2022, the Company exited a facility, relocating to a new one, and separately, closed <ix:nonFraction unitRef="facility" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzU0OTc1NTgxODAyMQ_8c3e3470-25ec-4095-9bdb-f0e9e5db178d">two</ix:nonFraction> other facilities.  In 2021, the Company closed <ix:nonFraction unitRef="facility" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="INF" name="rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzkyNw_adb4d524-16ce-4feb-8e3a-eea2708b8644">four</ix:nonFraction> facilities.  In 2020, the Company closed <ix:nonFraction unitRef="facility" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="INF" name="rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzk3MQ_19a2e0d7-4322-4840-80f0-8f0a35c3f517">two</ix:nonFraction> facilities and, separately, sold a facility closed in 2017.  These closures resulted in exit activity costs and asset impairment charges.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzE3ODQ_d5bf2f5f-d79f-448d-b234-8bb849a06ed0" continuedAt="ie549c8cfa5af460886d1364455ab76dc" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the exit activity costs (recoveries) and asset impairment charges incurred by segment during the years ended December&#160;31 related to the restructuring activities described above (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.823%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.823%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:6.366%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs (recoveries)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMS0xLTEtNzg2MDg_f8a5a17a-0087-4add-bf1e-8f701bf0dd81">3,256</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMy0xLTEtNzg2MDg_89bcd0f4-3da2-4888-a486-5723634bf9dc">1,198</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItNS0xLTEtNzg2MDg_945bb58e-c0c4-4bce-a7cb-d8879ddedc99">4,454</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItNy0xLTEtNzg2MDg_9f1473d2-adf2-416e-8acf-16ee87eac153">4,769</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItOS0xLTEtNzg2MDg_5ded7a2a-a9a5-4417-ab81-618e67a38c22">1,193</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMTMtMS0xLTc4NjA4_9e67e9fb-917a-41b0-9df2-56592d55262b">5,962</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMTUtMS0xLTc4NjA4_e77a658e-2c7f-4e0e-b7e2-43ee9ae9bdcf">15</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMTctMS0xLTc4NjA4_bbc4dc4d-84af-43f6-a4d6-dc1e92b87f25">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMjEtMS0xLTc4NjA4_f866f9aa-f4c8-42ae-a4c1-4f623e3d73c2">15</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMS0xLTEtNzg2MDg_48dd9cf3-e709-4ea7-b135-46088ead5300">1,825</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMy0xLTEtNzg2MDg_3bc30866-f12e-4a94-85eb-4c51e9f0448e">12</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtNS0xLTEtNzg2MDg_9fa03f18-0798-459b-8dbe-ba9756cb6e4a">1,837</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtNy0xLTEtNzg2MDg_9f497339-2336-4eb4-8cf7-e895c6e9d424">393</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtOS0xLTEtNzg2MDg_bee653c2-a5df-4919-beda-29b35678465c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMTMtMS0xLTc4NjA4_7c4f1205-ed1e-4d32-9483-519d3f0091a5">393</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMTUtMS0xLTc4NjA4_7194f565-0be2-4b55-9c35-1158c823397d">731</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMTctMS0xLTc4NjA4_f123df8a-5789-4ec5-9450-8eba3359eae0">9</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMjEtMS0xLTc4NjA4_02f03e07-fec3-4caa-9463-ba214db84598">740</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMS0xLTEtNzg2MDg_973a0e5d-cdcc-4827-81af-0b9482a8f184">771</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMy0xLTEtNzg2MDg_e50d262d-1f34-43e1-8b35-a87395451ac0">1,066</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtNS0xLTEtNzg2MDg_46f4759d-1dff-42fd-b911-e1f558757f24">1,837</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtNy0xLTEtNzg2MDg_4d211b2c-e25a-452a-b423-51ed6ff2071c">1,687</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtOS0xLTEtNzg2MDg_c1594087-e9ee-4a22-bf6c-2e0582b0b858">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMTMtMS0xLTc4NjA4_16c257f5-990b-4f26-b360-d03e2a3972a8">1,687</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMTUtMS0xLTc4NjA4_0fed3b6f-5a3d-498e-a243-af6ef4bdbad9">860</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMTctMS0xLTc4NjA4_3ea9796d-8f48-4b7b-b1a0-9a77ce7639b1">72</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMjEtMS0xLTc4NjA4_42e232f0-fa05-4c28-9ce0-762209537496">932</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMS0xLTEtNzg2MDg_71259b45-0fe4-47f8-a6b1-8d6ead0715d5">63</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMy0xLTEtNzg2MDg_7016777b-d865-4d5a-8b3d-1af9e65488cc">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtNS0xLTEtNzg2MDg_482aaad3-5118-4fb8-a9af-1290c0b63f94">63</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtNy0xLTEtNzg2MDg_a2b6ed76-e606-4254-bef0-8195f9ad5527">26</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtOS0xLTEtNzg2MDg_82adbcc4-9bad-4343-96f9-5cd972b95ff5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMTMtMS0xLTc4NjA4_aa0310a7-61d9-4bd4-944e-3c40fbb90ca8">26</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMTUtMS0xLTc4NjA4_f5763cf3-7a84-4fab-b1d5-5657642f0c33">226</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMTctMS0xLTc4NjA4_f5017620-d003-4a35-87c1-974346e355f3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMjEtMS0xLTc4NjA4_1ca1f537-edb3-4f34-b2fd-4b6929ed8b11">226</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMS0xLTEtNzg2MDg_c56d7406-c8ff-4cc5-96a2-03529b60f3b3">250</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMy0xLTEtNzg2MDg_80b7bb6c-75c9-4b55-ba7a-b25e0dba7512">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtNS0xLTEtNzg2MDg_9ceeb987-7349-4381-876b-d25f1015590a">250</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtNy0xLTEtNzg2MDg_baf9ec37-2878-4bb7-b717-a19c70e33369">145</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtOS0xLTEtNzg2MDg_edc8bd01-e70f-4979-8e52-16d9bd5cd8d3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMTMtMS0xLTc4NjA4_7344ad47-e31e-456f-88c9-59aba092b87d">145</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231" decimals="-3" name="us-gaap:BusinessExitCosts1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMTUtMS0xLTc4NjA4_cf42c6bf-0ada-48e2-8dd5-3c00601c35e3">375</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMTctMS0xLTc4NjA4_d9eb8847-275d-4a73-a969-8983d41ae07c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMjEtMS0xLTc4NjA4_24dcb981-1cc8-4995-9946-f3a168893bb3">375</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMS0xLTEtNzg2MDg_14cc8ad4-ab37-44d1-ac48-09402bdd3ee6">6,039</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMy0xLTEtNzg2MDg_9d8723c2-1123-4fa3-bc6d-abcd0ad33285">2,276</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctNS0xLTEtNzg2MDg_5eecd10b-2529-4e57-806c-9f30dbe96e2d">8,315</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctNy0xLTEtNzg2MDg_5573d201-f2bd-4e56-b8b1-30dbeaa2ff5e">7,020</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctOS0xLTEtNzg2MDg_f351a79a-096a-403b-8cf9-ff0e9793dd7c">1,193</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMTMtMS0xLTc4NjA4_0d017fc6-6aa2-4d9f-b313-a58a4cb664b5">8,213</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMTUtMS0xLTc4NjA4_586c355b-d610-4f71-8498-9a5861d41137">2,207</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringSettlementAndImpairmentProvisions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMTctMS0xLTc4NjA4_5d1be4d1-92cb-446b-8a6d-bc980879c7c4">81</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMjEtMS0xLTc4NjA4_b3e3acc3-8432-4421-83e5-7bbe1dbf97a2">2,288</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzE3NzA_83e7eb0f-7454-42f8-8009-1bf036ee1d91" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides a summary of where the above exit activity costs and asset impairments are recorded in the consolidated statements of operations for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i45c7964e33af433eb4a807a5353dd710_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzEtMS0xLTEtNzg2MDg_3ecfe6d6-6288-4725-b7b1-4834b9a4e90a">5,258</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iafd13dad52a244fe8c23e99242ee61c8_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzEtMy0xLTEtNzg2MDg_294ebffd-0266-4fe1-8094-a9b2887617f1">6,176</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iba9c650d738747a2ac239a7124dc9d82_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzEtNS0xLTEtNzg2MDg_d1c963b3-4213-4d18-b920-88f599ac3bfc">1,059</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ida1166cf063645c2ae303d35faf48820_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzItMS0xLTEtNzg2MDg_1ddfbc42-b24e-4eee-8135-13cfcb209cd6">3,057</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0f1488a28ad0418caff93c9d40bd09d3_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzItMy0xLTEtNzg2MDg_13119e7f-dd67-460c-b54d-c370d8c8fd01">2,037</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieb46dc1bb0264e97b683bb8e999646b7_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzItNS0xLTEtNzg2MDg_d6b8fc78-5179-485e-bce6-32b6f086915a">1,229</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total exit activity costs and asset impairments</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzMtMS0xLTEtNzg2MDg_33c4495c-38de-41a9-a49c-9860cbcab03f">8,315</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzMtMy0xLTEtNzg2MDg_be469d30-1a8d-4fe0-a560-21945e006d15">8,213</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:RestructuringCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzMtNS0xLTEtNzg2MDg_9d649ee4-bc36-41b0-b6e9-21be5643c368">2,288</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">63</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="ia7239ffa32704b3ba4a32fe08df7c793"><ix:continuation id="ie549c8cfa5af460886d1364455ab76dc"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table reconciles the beginning and ending liability for exit activity costs relating to the Company&#8217;s facility consolidation efforts (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:72.692%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzEtMS0xLTEtNzg2MDg_746c8899-a75f-413c-a21a-79ece8dc9c3d">272</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:RestructuringReserve" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzEtMy0xLTEtNzg2MDg_05d227d6-1b84-4f60-bc8f-fb8039fca6ae">1,030</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exit activity costs recognized</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzItMS0xLTEtNzg2MDg_32852034-899d-42cd-911b-a08763b1a115">6,039</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:BusinessExitCosts1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzItMy0xLTEtNzg2MDg_b1a6c000-3b11-400e-96f6-e07198afac55">7,020</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsForRestructuring" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzMtMS0xLTEtNzg2MDg_8b71af17-93ef-447c-84b5-f7f831c54bae">3,894</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsForRestructuring" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzMtMy0xLTEtNzg2MDg_9e1141c4-2d8a-4d49-8cc7-ed698b774c69">7,778</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December&#160;31</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:RestructuringReserve" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzUtMS0xLTEtNzg2MDg_33657297-5629-4eb8-99b0-3e22151b0b8c">2,417</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzUtMy0xLTEtNzg2MDg_18446680-16ec-46ad-ad53-d52c842b8cb3">272</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_133"></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(16) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:IncomeTaxDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2Nzg_17202012-2601-43ab-8faa-3316ebd6eda1" continuedAt="i225570bb7d7f4f939bba14ade503100d" escape="true">INCOME TAXES</ix:nonNumeric></span></div><ix:continuation id="i225570bb7d7f4f939bba14ade503100d" continuedAt="i7e1140e49ed545e9a10669e427d662bf"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax basis. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to reverse.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2OTg_b872acf8-afa0-4524-8137-2c51b4ae8a9e" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of income before taxes from continuing operations consisted of the following for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Domestic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzEtMS0xLTEtNzg2MDg_3f2b4641-b0c7-43df-829f-5b757919b3c5">112,635</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzEtMy0xLTEtNzg2MDg_bfbc03ec-7988-4e05-a28e-4785184ac855">93,155</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzEtNS0xLTEtNzg2MDg_74ce4fd8-164f-4441-8f0d-009e9416a2b4">108,930</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzItMS0xLTEtNzg2MDg_b4130831-b67a-4a95-afc3-74c5553d7f9d">1,145</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzItMy0xLTEtNzg2MDg_7a18ac85-48cc-4c8d-ab6a-da340ef63255">6,407</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzItNS0xLTEtNzg2MDg_cea3ae2e-efac-4fd5-9e55-2951212dd0f8">1,171</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before taxes from continuing operations</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzMtMS0xLTEtNzg2MDg_333eec08-cb1c-47ae-bd35-507802943d43">111,490</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzMtMy0xLTEtNzg2MDg_751cbc65-797a-47c6-962e-0da1d048c763">99,562</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzMtNS0xLTEtNzg2MDg_e04b6343-f35c-4b24-af9d-f4ded3852928">107,759</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2ODE_70a169e3-5e8e-412a-a8aa-0d2a7212f99b" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from continuing operations for the years ended December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzItMS0xLTEtNzg2MDg_efcbd22f-cd9a-42fd-b3f6-3af3e8eee46d">17,014</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzItMy0xLTEtNzg2MDg_9157620a-6ac3-4a19-8f18-8572715fc39c">16,137</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzItNS0xLTEtNzg2MDg_cfe8b541-2d2e-4b85-88aa-4d1cdf9d13ee">16,505</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzMtMS0xLTEtNzg2MDg_2ce38278-59e0-4010-8e35-5ad781e3a9e3">5,647</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzMtMy0xLTEtNzg2MDg_f2772644-748d-48b1-be84-4b50ce6ae7ec">5,009</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzMtNS0xLTEtNzg2MDg_b0c27d22-b121-4049-a54d-88523d5e8de0">4,071</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzQtMS0xLTEtNzg2MDg_6c56a072-10dc-42b8-935f-0a0c064a29e3">86</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzQtMy0xLTEtNzg2MDg_67d51d5f-05ec-40ce-9543-40165f3b518e">932</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzQtNS0xLTEtNzg2MDg_3425329d-7161-455a-b3eb-50f5a3fbf2a1">106</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzUtMS0xLTEtNzg2MDg_55a0452a-d56c-43a2-ad71-673a48605e33">22,747</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzUtMy0xLTEtNzg2MDg_f93e5ba4-799b-4cf9-931c-fb993a007739">22,078</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzUtNS0xLTEtNzg2MDg_e9ec6844-ac48-4e84-95bb-c8fe24669d12">20,682</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzctMS0xLTEtNzg2MDg_34ad062b-0789-4bd4-b492-9e9844977459">5,259</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzctMy0xLTEtNzg2MDg_3640a9d2-41a4-4f0d-af64-f8678034428b">1,766</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzctNS0xLTEtNzg2MDg_286e4210-5ab2-44ce-a860-897c43b842df">3,620</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzgtMS0xLTEtNzg2MDg_cc5a1bcd-ac59-40d6-b943-55ab6a1e3307">1,381</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzgtMy0xLTEtNzg2MDg_f9e44876-2800-4bd0-819f-5cd855adf30d">134</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzgtNS0xLTEtNzg2MDg_fe9e65f8-b88d-4553-8651-603b42e1f258">672</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzktMS0xLTEtNzg2MDg_ef0c7700-b6b1-4fce-888c-85bf7605b1a4">303</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzktMy0xLTEtNzg2MDg_233e11ca-d888-4bc5-9376-6dbaba484367">1,068</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzktNS0xLTEtNzg2MDg_807264df-d3e0-4710-ba8d-6a822e99f014">506</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzEwLTEtMS0xLTc4NjA4_f81bffa8-96f3-4fdd-adce-c723e6ae5b83">6,337</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzEwLTMtMS0xLTc4NjA4_e8f382cb-1cec-4841-9370-af3d132e3372">2,968</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzEwLTUtMS0xLTc4NjA4_b066f089-49cc-4c72-a836-66e073869ace">3,786</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzExLTEtMS0xLTc4NjA4_5bbf7796-fd91-4b37-82f3-9d970a8812db">29,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzExLTMtMS0xLTc4NjA4_336aaf4d-5db9-4df5-8a0c-33e64fa2459e">25,046</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzExLTUtMS0xLTc4NjA4_9ded3b01-018d-4aba-8e7b-5ba4797a917f">24,468</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">64</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i7e1140e49ed545e9a10669e427d662bf" continuedAt="iafcb75d9d4e145659e40eb52ea9a5c65"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2OTI_fb465a99-754a-4608-9f24-f8edab60efef" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from discontinued operations for the years ended December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzItMS0xLTEtNzg2MDg_52551080-c10c-4153-9d4a-895b077ffd9d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzItMy0xLTEtNzg2MDg_0d0ec032-0036-495b-a1a9-4eda4e12101f">362</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzItNS0xLTEtNzg2MDg_702a15a6-a51a-4c54-a1c0-605f2bb8382b">1,345</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzMtMS0xLTEtNzg2MDg_a091e65b-9d8e-46cc-95a9-b21b63349f6c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzMtMy0xLTEtNzg2MDg_a30b94d1-f01b-4784-98be-9a085f0e211b">139</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzMtNS0xLTEtNzg2MDg_5651959d-e2fb-4cf5-8f67-1b609d4deadd">57</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzQtMS0xLTEtNzg2MDg_df451f17-581b-4622-a16b-0f8d27f45c3f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzQtMy0xLTEtNzg2MDg_4994c9ad-2bc2-4fc3-9a44-1d09074949cd">214</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzQtNS0xLTEtNzg2MDg_aa6458c6-b48c-4854-b892-b9889e6698d4">1,725</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzUtMS0xLTEtNzg2MDg_7549d0fc-f98f-4eaa-936c-c5c68a7e1f55">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzUtMy0xLTEtNzg2MDg_bca28501-351e-40f7-bb5e-cda52193fa93">715</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzUtNS0xLTEtNzg2MDg_7c50f787-274b-481d-9fde-dc4293dffc41">3,127</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzctMS0xLTEtNzg2MDg_bcc2ea17-1f74-40a1-9b68-cde587ebe3fc">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzctMy0xLTEtNzg2MDg_55e4afb5-2ac5-4fe8-8b12-f7b305fca966">340</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzctNS0xLTEtNzg2MDg_732fb0a7-f75c-4c0c-873b-f038a0555654">876</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzgtMS0xLTEtNzg2MDg_713c81cd-0226-4138-a15f-72a7f95c3e24">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzgtMy0xLTEtNzg2MDg_1b768f5f-c640-44bd-8510-52b47f312ac7">2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzgtNS0xLTEtNzg2MDg_55872caf-8aa5-4dd4-bb9d-1518ea6b0aa6">10</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzktMS0xLTEtNzg2MDg_11ec944a-6bd1-4816-b93e-faab06c7866a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzktMy0xLTEtNzg2MDg_9dd9da28-ba3c-4ae7-abc6-9dcfc091a822">11</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzktNS0xLTEtNzg2MDg_fcd5884b-172c-4dc8-b96b-e388feb2011a">138</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzEwLTEtMS0xLTc4NjA4_321acd6c-ff96-400f-8307-d5d057973470">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzEwLTMtMS0xLTc4NjA4_7a0d5830-e708-40d5-9c5c-1b7cb84186ab">349</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzEwLTUtMS0xLTc4NjA4_a703b822-70f3-409e-b695-d7c9de7033da">1,004</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzExLTEtMS0xLTc4NjA4_5679860b-f221-4bc2-b980-8b071c6bcfd0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzExLTMtMS0xLTc4NjA4_780cb83d-7220-436f-bacf-ecc5b7c9974a">366</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzExLTUtMS0xLTc4NjA4_475ad3f9-1f33-4a34-b4b4-99b374c4ad0d">2,123</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ3MjQ_57f48574-6159-4387-8fe9-6f48d99b91b7" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from continuing operations differs from the federal statutory rate of <ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEwNTE_f52444af-a140-419a-ac11-24395790e8d9">21</ix:nonFraction>% due to the following for the years ended December 31 (in thousands, except for percentages) :</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:31.792%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.325%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.325%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.331%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Statutory rate</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtMS0xLTEtNzg2MDg_5f07fffd-2473-4651-8266-c580bea30417">23,413</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtMy0xLTEtNzg2MDg_71b12247-7b1a-4be6-be61-dfcddcf8ab9d">21.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtNS0xLTEtNzg2MDg_fd7385d9-076e-492e-b406-63e1bc0bad9a">20,908</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="INF" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtNy0xLTEtNzg2MDg_e640e60f-eb42-4821-ad3a-d8970e4f75f2">21.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtOS0xLTEtNzg2MDg_61cc7edd-ec1a-4977-9667-2ac81b6112ff">22,629</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="INF" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtMTEtMS0xLTc4NjA4_d1351c1b-403f-4b26-a50f-40932fd6a420">21.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State taxes, less federal effect</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItMS0xLTEtNzg2MDg_743cc9cc-b93b-4766-a5d1-9d16a8baf2cd">5,541</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItMy0xLTEtNzg2MDg_7d1adaf0-783d-44c6-8f85-f731a522a929">5.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItNS0xLTEtNzg2MDg_b7261a04-449e-4109-be84-fd774f584df5">4,068</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItNy0xLTEtNzg2MDg_ac722cfb-1b10-4fdd-8fe9-ae9a4894a140">4.1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItOS0xLTEtNzg2MDg_76ce054f-ae9b-4b29-9ced-315755d6d3ec">3,650</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItMTEtMS0xLTc4NjA4_faab819b-8fcb-407e-988b-d98e51bdbcdf">3.4</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal tax credits</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtMS0xLTEtNzg2MDg_33eddc4e-2208-4281-a04e-28d96b670e1d">549</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtMy0xLTEtNzg2MDg_1a4d32c7-d69a-4a1e-859d-4e1000a642e3">0.5</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtNS0xLTEtNzg2MDg_016af22a-2d53-4fb5-9613-0b81a2daa3af">587</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtNy0xLTEtNzg2MDg_e5bc5379-73b1-43b2-85fc-f0936af08b71">0.6</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxCredits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtOS0xLTEtNzg2MDg_32b586b2-e86d-4996-ad8c-c66cac3758fd">1,064</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtMTEtMS0xLTc4NjA4_6c160a06-e900-4d01-8baf-204de4a717fb">1.0</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess tax benefit on stock based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtMS0xLTEtNzg2MDg_997dbe72-5074-483f-bdbc-fbf6f53ef454">214</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtMy0xLTEtNzg2MDg_f6420de8-60aa-4ad4-90cf-bfd81901f090">0.2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtNS0xLTEtNzg2MDg_b7fc245e-0862-4613-8612-6c5a0f4b6c5a">2,039</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtNy0xLTEtNzg2MDg_3d89ccf1-a8b9-4feb-a3f1-41af4c3b3b13">2.0</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtOS0xLTEtNzg2MDg_a81f57f4-dde6-475d-8783-8a629d10fd55">1,674</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtMTEtMS0xLTc4NjA4_012cff0c-d969-4359-a66b-1871675b170c">1.6</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtMS0xLTEtNzg2MDg_d7753c75-b27c-4911-a820-3bc797120f39">960</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="3" name="rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtMy0xLTEtNzg2MDg_a3df5c7c-c150-452f-ba46-b61dfcb8eb2a">0.9</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtNS0xLTEtNzg2MDg_cabbfadd-f4b2-4df2-888b-7c3ee1352797">1,781</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="3" name="rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtNy0xLTEtNzg2MDg_fbb6f3c1-bcf8-4b7d-8264-fa1bb202dcd3">1.8</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtOS0xLTEtNzg2MDg_4fdb051a-1ed9-403f-aa30-c7537d134bf3">1,114</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="3" name="rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtMTEtMS0xLTc4NjA4_e16a2542-aa92-4140-9d5a-17980ccf4e7b">1.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctMS0xLTEtNzg2MDg_5a3f093c-6b29-4085-9223-ad75c5a94894">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" format="ixt:fixed-zero" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctMy0xLTEtNzg2MDg_a493b1d5-92a0-443a-8b85-6a1a50ef5dc9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctNS0xLTEtNzg2MDg_06590d15-8646-4fd5-a9fa-101a1079b942">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" format="ixt:fixed-zero" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctNy0xLTEtNzg2MDg_61294bbb-bec4-48b2-a856-09ee9b9df753">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctOS0xLTEtNzg2MDg_b0371608-fffe-441a-9b1b-539f9ba153fb">130</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctMTEtMS0xLTc4NjA4_aa63ba8e-3269-4b66-9902-6b60d3068127">0.1</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTEtMS0xLTc4NjA4_f0be28e3-05d1-473d-9191-17aa038ce5b9">67</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTMtMS0xLTc4NjA4_68b158f9-4cda-4d51-af7c-853a39915a41">0.1</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTUtMS0xLTc4NjA4_9b8347f8-3719-4e59-91a8-fdc972657b3c">915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTctMS0xLTc4NjA4_4ea3d8d3-a3e1-420f-a516-5901163b4757">0.9</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTktMS0xLTc4NjA4_f0891321-dfee-472d-9013-d4565be49ee6">57</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" format="ixt:fixed-zero" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTExLTEtMS03ODYwOA_23be699b-45bd-4b89-a9e7-714da022a328">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTEtMS0xLTc4NjA4_51a2718f-0a1a-4689-98bc-70aed814257a">29,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTMtMS0xLTc4NjA4_a4a3a70d-c630-4597-85ca-0f1767bf823b">26.1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTUtMS0xLTc4NjA4_291e2477-d56e-4f67-9602-c8fef5def874">25,046</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTctMS0xLTc4NjA4_4ca3cf75-fe15-423d-a056-79532af4d2df">25.2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTktMS0xLTc4NjA4_1fba1323-1b7c-41ba-8202-01f73cccf22e">24,468</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTExLTEtMS03ODYwOA_6290f884-e9f1-4be6-9ca5-94ab55ea9a4c">22.7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2ODc_d0237915-5a93-416d-837a-f2bb0d147a31" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax liabilities at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:72.692%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEtMS0xLTEtNzg2MDg_05c2e18f-9c9f-4416-a488-5329397eb240">14,570</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEtMy0xLTEtNzg2MDg_77f704b1-9e97-4289-adc8-95f759f5eba3">9,633</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzItMS0xLTEtNzg2MDg_49c1cd7f-cd5a-49c6-9000-49ba328ff211">62,132</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzItMy0xLTEtNzg2MDg_d21f611a-83c6-4f88-988a-82cfcf6253d5">48,265</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzMtMS0xLTEtNzg2MDg_b7947d72-4db8-450d-b8ec-6bb559aa2347">3,706</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzMtMy0xLTEtNzg2MDg_9942964c-8f2c-4555-b2ad-6fb04a4bb336">1,657</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzUtMS0xLTEtNzg2MDg_fd366d8e-f1a8-4f46-af6c-e924ebbe4c85">8,133</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzUtMy0xLTEtNzg2MDg_3a4efa1e-0c70-4547-ba5d-64c337ba3e06">5,298</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross deferred tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzYtMS0xLTEtNzg2MDg_c96f909b-8b2a-4eaa-a664-32ebb89230df">88,541</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzYtMy0xLTEtNzg2MDg_aa722dac-b17b-476c-97a9-27528b94390d">64,853</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital loss carryforward</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsCapitalLossCarryforwards" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzctMS0xLTEtNzg2MDg_82a1b4d5-512f-4d1d-9b0f-63be2790a98d">26,490</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsCapitalLossCarryforwards" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzctMy0xLTEtNzg2MDg_18347515-36ff-46f0-9f13-fec979ba6106">27,328</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Equity compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzgtMS0xLTEtNzg2MDg_a59f3889-b8e6-4e28-9971-6774270d521a">5,993</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzgtMy0xLTEtNzg2MDg_9d3652ef-c9a9-4132-8553-9eda0e78e16d">8,236</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets held for sale</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="rock:DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMS0xLTEtODg3NzQ_222e72a9-e511-406f-9a35-0255fbf99f1a">13,669</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="rock:DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMy0xLTEtODg3ODM_c96070b4-c4ba-419a-8d67-aa1c07d40fd9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capitalized research and development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTEtMS0xLTg4Nzc0_f8619c9a-7a93-49e3-b0b0-f06860d922b7">4,503</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTMtMS0xLTg4Nzgz_57870722-82d4-4ea6-8c3a-843774b54a43">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMS0xLTEtNzg2MDg_d7b83d44-327d-432d-aeec-be2a17757a62">17,493</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMy0xLTEtNzg2MDg_6699a879-66e3-4eff-8bca-242495a94477">15,641</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross deferred tax assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTEtMS0xLTc4NjA4_740860a1-c05d-419a-8e56-1408a31652c5">68,148</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTMtMS0xLTc4NjA4_151b0ba0-4da4-423f-9389-13cac2d72765">51,205</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowances</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzExLTEtMS0xLTc4NjA4_7ca9ceea-2e30-4c9a-a63d-c093ed931533">26,488</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzExLTMtMS0xLTc4NjA4_90639bb6-17b9-4702-93bf-e5b6d73c76b9">26,581</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax assets, net of valuation allowances</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEyLTEtMS0xLTc4NjA4_1c0b2f58-c3a2-4e94-88bf-6ae8e93fa2a7">41,660</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEyLTMtMS0xLTc4NjA4_33936ead-1199-4f2e-8431-40c94c53dc6e">24,624</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEzLTEtMS0xLTc4NjA4_1f7235bb-7247-42a5-b215-d6c45787d80f">46,881</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEzLTMtMS0xLTc4NjA4_329a06b5-27ce-49ac-94de-d242849e211c">40,229</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">65</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="iafcb75d9d4e145659e40eb52ea9a5c65"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2022, the Company had total net operating loss carry forwards of $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="us-gaap:OperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEyNzU_6d30d71f-d727-4207-a37a-4eff9726b27a">7.9</ix:nonFraction> million, which included $<ix:nonFraction unitRef="usd" contextRef="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231" decimals="-5" name="us-gaap:OperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEyOTQ_ae99e6a4-dec9-4307-8c2f-c8a19c0ff12a">0.4</ix:nonFraction> million for federal, $<ix:nonFraction unitRef="usd" contextRef="i2f557da28680480aa47dbaedd8addd27_I20221231" decimals="-5" name="us-gaap:OperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEzMTA_6bbc6e70-3970-4d0b-a50e-485c9b2870cb">6.6</ix:nonFraction> million for state, and $<ix:nonFraction unitRef="usd" contextRef="i160e40f0d6b64250ab288482e07b4d75_I20221231" decimals="-5" name="us-gaap:OperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEzMjg_c2d4b9a5-a9a7-4a43-98d1-a1114b69e63e">0.9</ix:nonFraction> million for foreign income tax purposes. The federal and state net operating loss carry forwards expire between 2023 and 2042. The foreign net operating loss carry forwards expire between 2023 and 2031. The Company recognized a total of $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE1NTY_634b5097-44d9-4e0f-89b4-70fe36c7c8a4">0.7</ix:nonFraction> million of deferred tax assets, net of the federal tax benefit, related to these net operating losses prior to any valuation allowances, which included $<ix:nonFraction unitRef="usd" contextRef="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE3MDM_71684ee2-99b8-45b5-bf0d-6194e2e3c947">0.1</ix:nonFraction> million of federal and $<ix:nonFraction unitRef="usd" contextRef="i2f557da28680480aa47dbaedd8addd27_I20221231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE3MjE_183fede4-e4c2-453e-b890-d4447582da7c">0.4</ix:nonFraction> million of state deferred tax assets and $<ix:nonFraction unitRef="usd" contextRef="i160e40f0d6b64250ab288482e07b4d75_I20221231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE3NTc_2332b0a9-7742-4cb5-a2d5-87e912660ca2">0.2</ix:nonFraction>&#160;million of foreign deferred tax assets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the sale of the Industrial business during 2021, the Company generated a capital loss of $<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-5" name="rock:CapitalLossCarryfoward" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE5MDM_d8f6d70f-40c0-41c4-a7b4-e15a1521d72f">113.7</ix:nonFraction>&#160;million for federal and state purposes to the extent allowable under state tax regulations. Amended Federal returns were filed to carry back $<ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-5" name="rock:CapitalLossCarryfowardAmendedReturns" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIxOTkwMjMyNjMwNTY_ee271451-b968-42cb-be75-6ee45acfa381">3.7</ix:nonFraction>&#160;million of capital loss. As of December 31, 2022, the remaining capital loss carry forward is $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="rock:CapitalLossCarryfoward" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIxOTkwMjMyNjMwNzA_ce045eed-e7da-4778-aae8-9b44f1e11b3b">110.0</ix:nonFraction>&#160;million. The capital loss carryforward will expire in 2026.  The Company recognized a total of $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="rock:DeferredTaxAssetsCapitalLossCarryfowards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIwNzc_513527ef-e5e1-4e34-aefc-17ab5ec1fda0">26.5</ix:nonFraction>&#160;million of deferred tax assets, net of the federal benefit, related to this carryforward prior to any valuation allowances, which included $<ix:nonFraction unitRef="usd" contextRef="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231" decimals="-5" name="rock:DeferredTaxAssetsCapitalLossCarryfowards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIyMTE_bd521032-4a1c-45c2-8290-71907671578f">22.2</ix:nonFraction>&#160;million of federal and $<ix:nonFraction unitRef="usd" contextRef="i2f557da28680480aa47dbaedd8addd27_I20221231" decimals="-5" name="rock:DeferredTaxAssetsCapitalLossCarryfowards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIyMjk_ae40baa4-58c3-4727-85c9-820f915ef0a0">4.3</ix:nonFraction>&#160;million of state deferred tax assets. The Company has a full valuation allowance on the capital loss carry forward and as a result there is no deferred tax asset.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred taxes include net deferred tax assets relating to certain state and foreign tax jurisdictions. A reduction of the carrying amount of deferred tax assets by a valuation allowance is required if it is more likely than not that such assets will not be realized. In 2020, the valuation allowance in China was reversed and a tax attribute valuation allowance was also reversed as the Company expects to utilize the attribute.  In 2021, a valuation allowance was recorded on federal and state capital loss carry forwards which are not expected to be utilized before expiration. </span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:SummaryOfValuationAllowanceTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ3MjU_6f1022d7-e362-464c-8200-cb28d7b43694" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following sets forth a reconciliation of the beginning and ending amount of the Company&#8217;s valuation allowance (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ac4cd9abaf54a7b9341f1689083684e_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzEtMS0xLTEtNzg2MDg_d87a75ea-c0ab-4760-8c21-dc3754e17050">26,581</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3eeed6de8a694410925a55f57c53f891_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzEtMy0xLTEtNzg2MDg_e09b15bc-441c-4de6-a4fa-efcb58912e2a">111</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i93ccdef323fe44f7af1e2d598642810c_I20191231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzEtNS0xLTEtNzg2MDg_2a23bc52-d323-43fc-9e19-6bdce7314ae6">298</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost charged to the tax provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzItMS0xLTEtNzg2MDg_68ccf748-96ee-4b0d-9d4d-ec3fa8a25c5e">10</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzItMy0xLTEtNzg2MDg_6e4c8c41-ef0e-4515-985a-465655a06c62">13</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzItNS0xLTEtNzg2MDg_2339d2fa-d11a-466f-bf3f-7ea28566b9c2">70</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reductions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzMtMS0xLTEtNzg2MDg_6437ce51-9a77-460a-9791-f9340690f4e4">103</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzMtMy0xLTEtNzg2MDg_5a61eebd-9348-4577-b642-a1164256e5a4">41</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzMtNS0xLTEtNzg2MDg_28f99fcd-7028-4c84-856e-c371064bae00">248</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassification from discontinued operations upon sale of industrial group</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzQtMS0xLTEtNzg2MDg_899db622-24d2-4cff-b4f9-a936bf8f2431">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzQtMy0xLTEtNzg2MDg_daf1aad4-13ba-4236-ab5f-40aecef63fe0">26,498</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzQtNS0xLTEtNzg2MDg_a9bd0ac3-541d-42da-9c28-c187e83ca623">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231" decimals="-3" name="rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzYtMS0xLTEtNzg2MDg_785489d3-06d9-44bf-af0a-9a8fa819151a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231" decimals="-3" name="rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzYtMy0xLTEtNzg2MDg_0f572b34-4fc9-4f6f-9bde-3ceeb5687f3f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231" decimals="-3" sign="-" name="rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzYtNS0xLTEtNzg2MDg_3f4ea357-a478-4318-9705-64ec0b6b96da">9</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December&#160;31</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i698a586b50514af8806a5f504ae5c2ff_I20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzctMS0xLTEtNzg2MDg_9b92e71a-a2fc-4e97-9243-5a57bfba5807">26,488</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ac4cd9abaf54a7b9341f1689083684e_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzctMy0xLTEtNzg2MDg_c2e4de7d-aba9-4499-8fcb-7aed8913953c">26,581</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3eeed6de8a694410925a55f57c53f891_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzctNS0xLTEtNzg2MDg_60d51e03-89b4-43aa-a5ab-7d769b42fd6b">111</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ3MTk_9c1d2b94-de0a-4590-a102-0d73755f60f3" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company made net payments for income taxes for the following amounts for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"></td><td style="width:54.077%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.249%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.539%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.249%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.539%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.547%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments made for income taxes, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxNDhmOTRhM2ViNDM0MzcxYTA0Y2QyMGY3NzQxNzU2NC90YWJsZXJhbmdlOjE0OGY5NGEzZWI0MzQzNzFhMDRjZDIwZjc3NDE3NTY0XzEtMS0xLTEtNzg2MDg_6a87d3b3-5197-401c-8212-89f5ada214ed">27,017</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxNDhmOTRhM2ViNDM0MzcxYTA0Y2QyMGY3NzQxNzU2NC90YWJsZXJhbmdlOjE0OGY5NGEzZWI0MzQzNzFhMDRjZDIwZjc3NDE3NTY0XzEtMy0xLTEtNzg2MDg_0fea698d-9695-4b0b-bc3c-08b3eeab28b9">22,076</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxNDhmOTRhM2ViNDM0MzcxYTA0Y2QyMGY3NzQxNzU2NC90YWJsZXJhbmdlOjE0OGY5NGEzZWI0MzQzNzFhMDRjZDIwZjc3NDE3NTY0XzEtNS0xLTEtNzg2MDg_15131967-caac-45d4-ac52-79abd6872f84">21,351</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December 31, 2022, the Company had approximately $<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-5" name="us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzMyMTE_a04a726a-0655-4270-b46e-99c94a5dc04d">2.2</ix:nonFraction> million of undistributed earnings of foreign subsidiaries.  The Company continues to maintain its assertion that all remaining foreign earnings will be indefinitely reinvested.  Any excess earnings could be used to grow the Company's foreign operations through launches of new capital projects or additional acquisitions. Determination of the amount of unrecognized deferred U.S. income tax liability related to the Company's remaining unremitted foreign earnings is not practicable due to the complexities associated with its hypothetical calculation.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, 2021 and 2020, the Company did not have any unrecognized tax benefits and no activity related to such benefits has occurred in any of the years presented in the consolidated financial statements. The Company classifies accrued interest and penalties related to unrecognized tax benefits in income tax expense.  <ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="0" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQxOTA_51e69c9d-7b06-491f-868c-16e49cc7df35"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="0" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQxOTA_892536f3-e50a-4690-a6b5-4c28ddce4238"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="0" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQxOTA_a1a8ebf2-8665-4544-a233-2757f1bdd029">No</ix:nonFraction></ix:nonFraction></ix:nonFraction> interest or penalties have been recognized during the years ended December 31, 2022, 2021 or 2020.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company and its U.S. subsidiaries file a U.S. federal consolidated income tax return. Foreign and U.S. state jurisdictions have statute of limitations generally ranging from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ0NzE_d000bffc-7cbf-4586-bee5-b23ff0114e19">four</span> to <ix:nonNumeric contextRef="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231" name="rock:IncomeTaxStatueOfLimitationsExpirationPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ0Nzc_729b6f53-2fe6-4d21-a759-9bb0eb2608d2">ten years</ix:nonNumeric>. The Company is currently in appeals for an audit of tax years 2016 through 2019 in Massachusetts and believes the technical merits of the position will be sustained.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">66</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_136"></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(17) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:EarningsPerShareTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90ZXh0cmVnaW9uOjRlNTRjNzg2ODU1ZTQ1ZTZiZTdiMTE2YWMwOTJkODg1XzE0Mjg_c8e4df3b-fc12-4f1b-9ef5-a77e6eb3d3f1" continuedAt="ieb84fa791ce5412b80ac9dcaabbfd9a8" escape="true">EARNINGS PER SHARE</ix:nonNumeric></span></div><ix:continuation id="ieb84fa791ce5412b80ac9dcaabbfd9a8"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic earnings per share is based on the weighted average number of common shares outstanding. Diluted earnings per share is based on the weighted average number of common shares outstanding, as well as dilutive common shares which include shares issuable pursuant to equity based incentive compensation awards under the equity compensation plans described in Note 12 "Equity-Based Compensation" of the consolidated financial statements.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90ZXh0cmVnaW9uOjRlNTRjNzg2ODU1ZTQ1ZTZiZTdiMTE2YWMwOTJkODg1XzE0MzA_0327526f-4741-4ee8-b135-1bd6c4c1f885" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Weighted average shares outstanding for basic and diluted earnings were as follows for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzItMS0xLTEtNzg2MDg_629cf060-4cd8-480d-b43c-34de3dbbac9e">82,406</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzItMy0xLTEtNzg2MDg_d915ae6b-0005-49af-96a7-df850717dbda">74,516</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzItNS0xLTEtNzg2MDg_4f759383-7662-4098-8be7-d016ab98fdba">83,291</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzMtMS0xLTEtNzg2MDg_78b6ec2c-769d-4f12-b13e-b78f7b108e26">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzMtMy0xLTEtNzg2MDg_20e89a67-68c3-47ef-a4aa-81bd797b3cd4">1,113</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzMtNS0xLTEtNzg2MDg_bc26d9bb-b52b-4a2b-b6ca-761f607387ae">18,725</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income available to common shareholders</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzQtMS0xLTEtNzg2MDg_3ad42e70-9e74-4e8f-b08d-a96ded722b2b">82,406</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzQtMy0xLTEtNzg2MDg_a109b3b7-8bd5-4483-8af3-52abdd198db9">75,629</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzQtNS0xLTEtNzg2MDg_eb3051a8-ba26-411d-befe-d443ee0cb4f5">64,566</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for basic earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzYtMS0xLTEtNzg2MDg_f778250e-e3e1-498c-bb80-36947f0dcc7f">32,096</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzYtMy0xLTEtNzg2MDg_f185d005-e4e8-4037-969e-f905da4f87c0">32,873</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzYtNS0xLTEtNzg2MDg_7950e636-91e3-40e9-b3bb-c89da5842aaf">32,664</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for diluted earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common stock options and stock units</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzgtMS0xLTEtNzg2MDg_397490fc-889b-414c-8c57-231614153b74">96</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzgtMy0xLTEtNzg2MDg_da51591e-d8ab-4b82-aef3-bc1aa328ace5">181</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzgtNS0xLTEtNzg2MDg_e382087b-329a-4433-a37a-e71228e1a638">254</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares and conversions</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzktMS0xLTEtNzg2MDg_238bf571-23c1-48b5-967b-0b9d16b6e630">32,192</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzktMy0xLTEtNzg2MDg_f92fcd43-9788-436f-a6d1-65759f8c9693">33,054</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzktNS0xLTEtNzg2MDg_b1763a3f-0f06-4a4c-b755-3d77e240b724">32,918</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted average number of diluted shares does not include potential anti-dilutive common shares issuable pursuant to equity based incentive compensation awards.  The treasury stock method is used to calculate dilutive shares, which reduces the gross number of dilutive shares by the number of shares purchasable from the proceeds of the options assumed to be exercised and the unrecognized expense related to the options, restricted shares, restricted stock units, and performance stock units assumed to have vested.</span></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90ZXh0cmVnaW9uOjRlNTRjNzg2ODU1ZTQ1ZTZiZTdiMTE2YWMwOTJkODg1XzIxOTkwMjMyNjE0NTE_35b15d7e-cb71-40c7-862b-14d79f610499" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the potential anti-dilutive common stock options and stock units for the years ended December 31 (in thousands): </span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Common stock options and stock units</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="shares" contextRef="i2e934cf5324d4c9092293ca06e4e22b5_D20220101-20221231" decimals="0" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTo2MDUxYmJhOGY4Nzk0YmEzYjI3NWQ0YjE0OTVmYjU3NS90YWJsZXJhbmdlOjYwNTFiYmE4Zjg3OTRiYTNiMjc1ZDRiMTQ5NWZiNTc1XzEtMS0xLTEtOTI0OTA_30f45dab-4a53-4cb0-94e3-64f5dc0ec5a4">43</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="shares" contextRef="i0059adf753fa4e0ba7720534154c39f5_D20210101-20211231" decimals="0" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTo2MDUxYmJhOGY4Nzk0YmEzYjI3NWQ0YjE0OTVmYjU3NS90YWJsZXJhbmdlOjYwNTFiYmE4Zjg3OTRiYTNiMjc1ZDRiMTQ5NWZiNTc1XzEtMy0xLTEtOTI0OTA_721ab92e-d2c1-4224-9d49-3aae4e57a902">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="shares" contextRef="if8d1a98ebe74472893afcc5433a0f4f6_D20200101-20201231" decimals="0" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTo2MDUxYmJhOGY4Nzk0YmEzYjI3NWQ0YjE0OTVmYjU3NS90YWJsZXJhbmdlOjYwNTFiYmE4Zjg3OTRiYTNiMjc1ZDRiMTQ5NWZiNTc1XzEtNS0xLTEtOTI0OTA_39943167-d3fd-4510-8b67-1b7aff853cb1">13</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_139"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(18) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzA_3733616a-0f11-4773-afb9-657560fdfd33" continuedAt="ic36f7fe1888740e7a3e5c3cf95fdc4dc" escape="true">LEASES </ix:nonNumeric></span></div><ix:continuation id="ic36f7fe1888740e7a3e5c3cf95fdc4dc" continuedAt="i9eafb984f40147e4b84524b1e4e955a1"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's leases are classified as operating leases and consist of manufacturing facilities, distribution centers, office space, vehicles and equipment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Most of the Company's leases include one or more options to renew, with renewal terms that can extend the respective lease term from <ix:nonNumeric contextRef="i111a97b689604e879d56f14b17890abc_I20221231" name="us-gaap:LesseeOperatingLeaseRenewalTerm" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzMxMg_8f11f290-585f-4c96-bebb-753b3fc00f6a">one month</ix:nonNumeric> to <ix:nonNumeric contextRef="id42b3ba54fe5400f99720a70c62e6a75_I20221231" name="us-gaap:LesseeOperatingLeaseRenewalTerm" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzMxOA_049f159e-03b8-4fe5-b3aa-8d655b170da4">fifteen years</ix:nonNumeric>. The exercise of lease renewal options is at the Company's sole discretion.  As of December&#160;31, 2022 and 2021, the Company's renewal options are not part of the Company's operating lease assets and operating lease liabilities.  Certain leases also include options to purchase at fair value the underlying leased asset at the Company's sole discretion.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">67</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i9eafb984f40147e4b84524b1e4e955a1"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="rock:AssetsAndLiabilitiesLesseeTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzE_f835c87c-a8ac-46f4-b2fa-c73264e2e5a5" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts recognized in the Company's consolidated balance sheet at December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:14.250%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:52.116%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.250%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.254%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzEtMi0xLTEtNzg2MDg_f9a7f757-2c23-4e9b-8d5a-789f6fa42db3">26,502</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzEtNC0xLTEtNzg2MDg_4091f04d-7a0d-4886-a870-c091ecaae712">18,120</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzQtMi0xLTEtNzg2MDg_606e80eb-44d9-45ab-a9d1-58c632cef161">8,620</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzQtNC0xLTEtNzg2MDg_d32ae789-dff7-49b1-8daa-66eec924901b">7,239</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzUtMi0xLTEtNzg2MDg_cbae5010-dd25-4361-bdf1-9c2c7f3208d2">19,041</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzUtNC0xLTEtNzg2MDg_93aa99c9-4259-423d-be7f-0374aabe8657">11,390</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzYtMi0xLTEtNzg2MDg_0a3ecd04-fd52-4c4c-a9bc-d35c85987adf">27,661</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzYtNC0xLTEtNzg2MDg_c2c73c52-0297-4777-95ce-53f55a3e313d">18,629</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzI_cafea640-25b4-4321-a9e9-f14088498d06" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease costs for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.566%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.576%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzEtMS0xLTEtNzg2MDg_e4e86123-24c7-46f4-ad5c-14d1904ef29d">11,191</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzEtMy0xLTEtNzg2MDg_9a3f2658-66a9-496d-b93a-60280155c47e">10,977</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzEtNS0xLTEtNzg2MDg_381f73f6-f355-4d6d-abd9-9d0ebf2dfef6">10,005</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:ShortTermLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzItMS0xLTEtNzg2MDg_cb70c1cd-1cea-4ebf-8d93-0a06eaa1eb71">5,694</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:ShortTermLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzItMy0xLTEtNzg2MDg_6fea08b7-271b-463c-b1f6-d00c3c2c2a2a">7,153</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:ShortTermLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzItNS0xLTEtNzg2MDg_b2fecec3-ffab-49a4-aeef-219df5e3668b">996</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzMtMS0xLTEtNzg2MDg_091e5e73-b181-4efc-aa3e-58df8c6e321a">16,885</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzMtMy0xLTEtNzg2MDg_a9d9ac35-25b2-4325-898f-76efd985d917">18,130</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzMtNS0xLTEtNzg2MDg_e8658ece-c246-4196-bd3d-c17f2b192665">11,001</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to the Company's operating right-of-use assets and related operating lease liabilities for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.566%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.576%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of operating liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzEtMS0xLTEtNzg2MDg_612c3097-2d47-4c37-bf55-9e0e88f62dfe">8,835</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzEtMy0xLTEtNzg2MDg_3a6cec0b-b3de-4f53-a9bc-12ea28afce24">9,431</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzEtNS0xLTEtNzg2MDg_70599ce3-8dc5-4467-9c77-fa24d0150707">9,502</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for new lease liabilities</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzItMS0xLTEtNzg2MDg_60e0efbb-c3b3-40d8-a9a7-db252d03f742">17,008</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzItMy0xLTEtNzg2MDg_ed8610a4-89fc-4b0a-91c4-632525b0e219">1,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzItNS0xLTEtNzg2MDg_28f01d6e-b6cc-48ab-b11c-259dae2cfa4a">12,745</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to the Company's lease terms and discount rates as of December 31 were as follows:</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:67.467%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.818%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.332%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.818%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.335%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term - operating leases</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzEtMS0xLTEtNzg2MDg_0c74e5be-4a41-4a4a-b3a3-01a45703ab55">5.3</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzEtNC0xLTEtNzg2MDg_7b0fa9c8-4cdc-4aad-8752-be69ccc8f646">3.0</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate - operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="3" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzItMS0xLTEtNzg2MDg_b8c5c5b7-5957-462c-9645-d505ff61a1e6">5.0</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="3" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzItNC0xLTEtNzg2MDg_6aaa0f6c-f912-41ee-af2a-61bae5a7ac2d">5.2</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzM_52adecdf-1212-4325-afda-51ab3546d35a" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The future maturity of the Company's lease liabilities as of December&#160;31, 2022 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:77.339%"><tr><td style="width:1.0%"></td><td style="width:85.100%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.700%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzAtMS0xLTEtNzg2MDg_5154829f-83ae-488f-9318-38ae099bbd95">9,734</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzEtMS0xLTEtNzg2MDg_a1fafe19-0989-4357-bb51-f0c98582dbb8">6,884</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzItMS0xLTEtNzg2MDg_8c91915f-49b4-479f-a7da-f3f124567298">3,850</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzMtMS0xLTEtNzg2MDg_da64e79b-2adf-44e6-88bd-08801c76cfdd">2,444</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzQtMS0xLTEtNzg2MDg_474101b6-a073-4870-b2e0-5c42376f9a38">1,817</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">After 2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzUtMS0xLTEtNzg2MDg_36b57a52-ad64-4e1e-a658-5c600dc9b243">7,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzYtMS0xLTEtNzg2MDg_ec92b9b2-4ad1-46ee-9d6a-9032c09cab3a">31,740</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: present value discount</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzctMS0xLTEtNzg2MDg_1484f5ea-0a38-47f9-8568-4b80634f1ddc">4,079</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of lease liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzgtMS0xLTEtNzg2MDg_a6e1cf5e-1fb5-472f-9259-84c9678471d5">27,661</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company uses the its incremental borrowing rate based on information available at the commencement date of a lease in determining the present value of lease payments as the rates implicit in most of the Company's leases are not readily determinable.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_142"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(19) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDIvZnJhZzphYzFmZmYzZmMyYjE0YWVlYjk0MGQzZmVmNGExYTRiZS90ZXh0cmVnaW9uOmFjMWZmZjNmYzJiMTRhZWViOTQwZDNmZWY0YTFhNGJlXzc0MQ_7d297ae5-19f9-486b-a64e-75cf28b30286" continuedAt="idcf64d3f3518469aa2d09f6fa9983566" escape="true">COMMITMENTS AND CONTINGENCIES</ix:nonNumeric></span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="idcf64d3f3518469aa2d09f6fa9983566">The Company is a party to certain claims and legal actions generally incidental to its business. Management does not believe that the outcome of any claims, or other claims which are not clearly determinable at the present time, would result in a material adverse effect on the Company's financial condition or results of operations.</ix:continuation></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">68</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:6pt;text-align:justify"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_145"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(20) <ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:SegmentReportingDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NjA_b42aff08-8068-4c7a-886a-671f46b97c0b" continuedAt="i2a7b5075f3a44f7dbfb79a186a30b98a" escape="true">SEGMENT INFORMATION</ix:nonNumeric></span></div><ix:continuation id="i2a7b5075f3a44f7dbfb79a186a30b98a" continuedAt="i589ad183e6984947adfdde7751037531"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is organized into <ix:nonFraction unitRef="segment" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzYx_fdbedbc0-e67a-41cc-947b-5747d8905056">four</ix:nonFraction> reportable segments on the basis of the production processes, products and services provided by each segment, identified as follows:</span></div><div style="margin-top:6pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(i)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.12pt">Renewables, which primarily includes designing, engineering, manufacturing and installation of solar racking and electrical balance of systems;</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(ii)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.9pt">Residential, which primarily includes roof and foundation ventilation products, centralized mail systems and electronic package solutions, retractable awnings and gutter guards, and rain dispersion products, trims and flashings and other accessories;</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(iii)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4.68pt">Agtech, which provides growing solutions including the designing, engineering, manufacturing and installation of greenhouses; and</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(iv)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4.12pt">Infrastructure, which primarily includes structural bearings, expansion joints and pavement sealant for bridges, airport runways and roadways, elastomeric concrete, and bridge cable protection systems.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When determining the reportable segments, the Company aggregated operating segments based on their similar economic and operating characteristics.  During the first quarter of 2021, the Company reassessed its reportable segments.  As a result, the Company's former Renewable Energy and Conservation segment was divided into <ix:nonFraction unitRef="segment" contextRef="i869d08be871044d49eabb09d69de0d7d_D20220101-20220331" decimals="0" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzEzMDA_695cd064-aa8a-4411-85ff-acbe90020269">two</ix:nonFraction> reportable segments: Renewables and Agtech.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables illustrate certain measurements used by management to assess the performance of the segments described above as of and for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzItMS0xLTEtOTEyMDA_b71fac5c-8ec8-469d-aa15-b2377b71b4e7">377,567</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzItMy0xLTEtOTEyMDA_d2ce7aec-3957-4cc5-ba79-49a53604f0b6">432,096</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzItNS0xLTEtOTEyMDA_1b0856c7-9d4f-481c-b9c5-93345d9600ea">238,107</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzMtMS0xLTEtOTEyMDA_b41ea3db-cf20-4062-a647-39992182efde">767,248</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzMtMy0xLTEtOTEyMDA_20c4a99c-fa97-4b28-9ea8-49349047faee">635,505</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzMtNS0xLTEtOTEyMDA_db62633c-84c6-43ea-b846-4e8da54c0a43">522,814</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzQtMS0xLTEtOTEyMDA_1e3da615-0d2e-484d-bab9-259ed3128b25">168,868</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzQtMy0xLTEtOTEyMDA_6d3a9163-24a2-4cfb-b589-09f8cad9e69b">199,161</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzQtNS0xLTEtOTEyMDA_76490290-22ab-4698-bbd3-b776d9698e47">209,460</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzUtMS0xLTEtOTEyMDA_38a1b527-cc3d-41b8-ade1-3066214e88b8">76,283</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzUtMy0xLTEtOTEyMDA_ea615313-b84f-4d87-803c-f8bd227de80b">73,021</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzUtNS0xLTEtOTEyMDA_7d70355b-01c0-4111-bc96-d8bbcf0a8fdc">62,197</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total consolidated net sales</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzYtMS0xLTEtOTEyMDA_e402c387-0ad2-4c2e-b3ce-0751e4c8045f">1,389,966</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzYtMy0xLTEtOTEyMDA_0d0cd4ae-c32b-40e8-9116-dee0ecb3dd4b">1,339,783</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzYtNS0xLTEtOTEyMDA_f918a31d-3dd3-475e-ad4c-35d67cbfc83e">1,032,578</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from operations:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzktMS0xLTEtOTEyMDA_57101bd0-69bb-47e8-a116-e71e5c872771">25,243</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzktMy0xLTEtOTEyMDA_c3839cab-34bc-4a15-a6e4-4461986c998c">20,158</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzktNS0xLTEtOTEyMDA_40a1428a-2008-4630-9f95-2bb29dd8ac16">30,105</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEwLTEtMS0xLTkxMjAw_71cd64dd-5ac3-441c-a2c5-e69a9daf862c">126,458</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEwLTMtMS0xLTkxMjAw_0c185c17-1285-48f1-8c86-34227322cf0a">105,821</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEwLTUtMS0xLTkxMjAw_f772403c-26c2-4407-9e01-ddbaa2e1da72">94,430</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzExLTEtMS0xLTkxMjAw_82ea9195-6ea9-4b2b-9777-7be024013b77">2,914</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzExLTMtMS0xLTkxMjAw_bea3f6ca-f515-42bd-a07a-08075f8196c1">931</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzExLTUtMS0xLTkxMjAw_5b6250b2-dd25-41f2-931b-ddd639a630b7">10,633</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEyLTEtMS0xLTkxMjAw_2ecfd553-c9f3-403b-8b20-64649f19f2e9">9,003</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEyLTMtMS0xLTkxMjAw_34d52fab-7129-42cd-a8af-7dc52047c6ac">8,911</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEyLTUtMS0xLTkxMjAw_572b4d29-3175-449f-ad4d-7f5268b94a07">7,233</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segments income from operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i60b596a3d4bd473c91a8a5d697da7dbb_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEzLTEtMS0xLTkyNDk2_543778ca-99e8-4d16-b699-960fd34760dc">163,618</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib1b3e591b04d4db282b65aef95d18298_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEzLTMtMS0xLTkyNDk2_f220e3e8-342f-41ec-ab99-11b09205e044">133,959</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic23634df90da43eba654dcbf13a1a25e_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEzLTUtMS0xLTkyNDk2_6fb2f536-6a10-4bd9-a308-650aa628b397">142,401</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE0LTEtMS0xLTkxMjAw_982875e7-14dc-415b-8c4e-76a587734e5f">33,516</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE0LTMtMS0xLTkxMjAw_2408f622-0fd4-4122-b428-dd458455627a">36,971</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE0LTUtMS0xLTkxMjAw_ac47c971-242a-4c38-979e-f92db0801e97">35,211</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income from operations</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE1LTEtMS0xLTkyNDk2_cdb2914e-574d-4010-8d15-11eb05cd4c90">130,102</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE1LTMtMS0xLTkyNDk2_f54eb03c-f57d-4254-b5c2-e79ca8f9f14e">96,988</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE1LTUtMS0xLTkyNDk2_ed4478ad-bc86-4aa0-ab01-d61272f873d9">107,190</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and Amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE4LTEtMS0xLTkxMjAw_792ace30-6bd4-4fa5-b77c-507c3b96851c">8,467</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE4LTMtMS0xLTkxMjAw_5ed46dba-b08e-426f-806d-9357ae838e54">14,682</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE4LTUtMS0xLTkxMjAw_5a129dd9-4539-4370-a521-1051c4b7e0fa">3,377</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE5LTEtMS0xLTkxMjAw_8fac612e-a40b-4207-bf2c-e6fa52525d69">8,983</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE5LTMtMS0xLTkxMjAw_547381d5-9ee2-4e4b-904d-c17794a48ea2">8,694</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE5LTUtMS0xLTkxMjAw_9120d614-8c39-491b-9144-6a309fe65a05">8,110</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIwLTEtMS0xLTkxMjAw_848686e3-aa52-4ac6-bd41-da653dfcba69">4,377</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIwLTMtMS0xLTkxMjAw_3294af0e-00eb-451d-8fdf-4f569fd78f56">5,279</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIwLTUtMS0xLTkxMjAw_27687ede-e710-4408-a300-c72ecbebe91a">6,068</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIxLTEtMS0xLTkxMjAw_332522cd-3a15-48fa-81b5-1ee6060b01f5">3,150</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIxLTMtMS0xLTkxMjAw_8595569f-b09e-4f50-bfb2-caeacc018899">3,092</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIxLTUtMS0xLTkxMjAw_d108ad6c-91a0-4c11-bf61-3a6f1c193635">3,060</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIyLTEtMS0xLTkxMjAw_bfc7eec5-c68c-4f3a-a2c2-a5d44812feea">1,190</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIyLTMtMS0xLTkxMjAw_1a7e7fde-886e-4d30-a850-82ebb08f7316">219</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIyLTUtMS0xLTkxMjAw_e885496c-af97-45c3-9894-490ef5db0f5f">300</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIzLTEtMS0xLTkyNDk4_c9d9a5ff-6f11-4958-8bd3-f2df971b912b">26,167</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIzLTMtMS0xLTkyNDk4_1f072123-6f00-4055-80e4-b7d7898e3d1a">31,966</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIzLTUtMS0xLTkyNDk4_a9426029-b6e3-4e56-bc51-a3f811652107">20,915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">69</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i589ad183e6984947adfdde7751037531" continuedAt="i8547abc8e6694a76a7704aa07805f270"><div style="margin-top:6pt;text-align:justify"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NDU_851be72f-723f-4031-b74e-aeb26983c8f4" escape="true"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaba4a164c3c2455093d990d4759232a1_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI2LTEtMS0xLTc4NjA4_9ec9cfc9-d1b9-4499-afe0-54a93de3c96d">392,368</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i522f8989270a4929aef98ff7b39f90b8_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI2LTMtMS0xLTc4NjA4_cfe1e409-b2ac-4ccc-85b7-f3acddd59cbe">445,486</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib741179ea0294bdead78b270f0daf503_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI2LTUtMS0xLTc4NjA4_88faaceb-e1bf-4026-95fb-4e7aaccd4adf">402,797</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f3b83f3e41943e1b929e07ef325953f_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI3LTEtMS0xLTc4NjA4_21d89fe0-b69c-466e-bbfa-acc285f68142">519,567</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i24687447981245569bcd8a66827a2383_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI3LTMtMS0xLTc4NjA4_5e64fc82-956f-454a-a809-31739273e79b">453,469</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i35e9b659622843179eac557f47830575_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI3LTUtMS0xLTc4NjA4_9dafbfe1-8f89-4fdb-be62-0888b7ae7b6e">407,132</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i53a3ff74d8a3431fb702036ea2250ca3_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI4LTEtMS0xLTc4NjA4_1b2528f1-2b22-4e75-8294-345aeb8c1754">193,966</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia024c32336d54193abc35a7cec004b22_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI4LTMtMS0xLTc4NjA4_975ceb09-bbf8-4ff8-9900-67fb40e9f542">212,038</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic897e3a5a34b41629ff3e8e3eecfea5c_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI4LTUtMS0xLTc4NjA4_857da00d-6cd6-486d-9006-d45b561f9677">216,274</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0fa156d1fd3e4bcab8e0f6b9aa80f64d_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI5LTEtMS0xLTc4NjA4_a512514a-3d3e-4a91-a65c-2c81c24d0e99">80,264</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i79e3e4b34a52405d8524a12a7e4b37c4_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI5LTMtMS0xLTc4NjA4_8cac2888-d0a0-4769-a8e6-e715864fdb31">82,662</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9ed3fe44794045ffb4246f6ff677f8b6_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI5LTUtMS0xLTc4NjA4_e3e5a587-7fd1-493c-b76e-0f26664c8531">80,796</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i625af8856ca9471d8d96392464096c20_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMwLTEtMS0xLTc4NjA4_f8eb0713-0b3c-401c-a842-c3d1d9fee2ce">24,448</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idda8bba80a524f4ba58246d35e3514f1_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMwLTMtMS0xLTc4NjA4_0525192b-8042-4233-807d-8459f01c31f7">21,246</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iede4e392ee2641ddba8694142f8c302d_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMwLTUtMS0xLTc4NjA4_1598fb7b-5967-4aa4-8432-ae962408d726">28,057</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets of discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0678936455bf45789e72201128d5f331_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMxLTEtMS0xLTc4NjA4_f0817ffb-fb83-4d51-ae68-956575bb026c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i625d1e6d332242c5948db9708e0b6766_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMxLTMtMS0xLTc4NjA4_e064c2f0-3a16-4de0-898c-7873298032f2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idec42e19198e484da403534f5dd6fb19_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMxLTUtMS0xLTc4NjA4_c5964ee5-5d15-45fd-9f39-ab348a7d702a">77,438</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMyLTEtMS0xLTc4NjA4_009a174b-e58a-44c9-82f0-64b57ef96a4d">1,210,613</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMyLTMtMS0xLTc4NjA4_1b511d6e-b920-420d-b7be-803502440e45">1,214,901</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMyLTUtMS0xLTc4NjA4_04ed4439-4c9c-4ef7-a0e6-c7098d326fed">1,212,494</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM1LTEtMS0xLTc4NjA4_ea92ad04-2671-4107-a21d-d75d0fbc975c">3,589</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM1LTMtMS0xLTc4NjA4_a09cb1cd-6db5-4c3c-b76b-e34b8760b149">4,268</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM1LTUtMS0xLTc4NjA4_20aeb121-4198-4cbd-bc03-299599e8b780">423</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM2LTEtMS0xLTc4NjA4_d897ab42-71b0-4d0d-8770-c47fd1ff531d">10,050</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM2LTMtMS0xLTc4NjA4_9dbaf8be-b31d-484c-8930-121e3b03f43a">4,182</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM2LTUtMS0xLTc4NjA4_b3c1d496-b906-4d43-8fc1-4c2240eb50c4">3,313</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM3LTEtMS0xLTc4NjA4_e6814495-03f4-4a78-86ec-6b7db17c3c14">3,177</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM3LTMtMS0xLTc4NjA4_9e0e72f2-b90a-4d35-915a-928ef450b4a7">3,289</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM3LTUtMS0xLTc4NjA4_6b038432-01d9-4bc1-92ba-478f3694e681">720</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM4LTEtMS0xLTc4NjA4_b7f5274b-c803-4639-bf69-6156527d18fe">1,898</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM4LTMtMS0xLTc4NjA4_97f116e8-8a40-47b8-9dd4-3b4118fbadd1">2,097</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM4LTUtMS0xLTc4NjA4_930c7e6b-61d4-4ee4-98fc-bb73e2edfcd3">1,511</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenditures</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM5LTEtMS0xLTc4NjA4_9e0a127f-f9a0-438f-802a-2bc4067fedda">1,424</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM5LTMtMS0xLTc4NjA4_27379266-36b9-4466-b774-6b0a77bd8004">3,869</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM5LTUtMS0xLTc4NjA4_8f7abd20-773b-4f9f-8559-38ff86d2bae2">7,101</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzQwLTEtMS0xLTc4NjA4_16a9dbe9-634f-423d-bfaf-0e3293c6d4b7">20,138</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzQwLTMtMS0xLTc4NjA4_4c0c661d-2aa7-4498-9b13-5693b0fc9a29">17,705</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzQwLTUtMS0xLTc4NjA4_146ccbf0-1b22-41f5-86d3-81a9849e826a">13,068</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NTE_0818618c-e7b1-4952-b3aa-8fac262dd1dd" escape="true"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables illustrate revenue disaggregated by timing of transfer of control to the customer for the years ended December 31 (in thousands): </span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.099%"><tr><td style="width:1.0%"></td><td style="width:20.211%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.846%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.545%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.995%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.545%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.375%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.545%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.995%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.545%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.998%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5b93ecf38b69436a9e47e1cf87f6f9bf_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtMS0xLTEtNzg2MDg_7edd6c64-8597-4c89-bdbf-fe5d443e755b">27,317</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i69dfb26490e5474d895d2ad31f8c3ad6_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtMy0xLTEtNzg2MDg_90bff224-54e6-4f96-95e8-7bd9c7757b78">761,576</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie54708b0a142430d94d5e77598ffb979_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtNS0xLTEtNzg2MDg_84f142fa-ac7d-4375-b8f5-394228d2dd5a">13,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i761c1d240aeb47c49dd52ec21d0f52fa_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtNy0xLTEtNzg2MDg_4b4a938e-0b14-4c5b-b4d6-fc71fcc9fdea">32,983</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7d5940f4d0994a899a9621ee6a085a48_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtOS0xLTEtNzg2MDg_85bf2d89-99aa-4916-91af-271de1a6b2bf">834,887</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iabc0c22753be41148c061c9b5ff1ef5b_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtMS0xLTEtNzg2MDg_461508a5-59d4-4ff5-9507-1028322236e6">350,250</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9e97e2bedcef4d9ea73f04853fd05f0c_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtMy0xLTEtNzg2MDg_687c06a3-573d-4480-a630-ed0679de50c6">5,672</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icecda5027596436db26a6b91d2f54b1c_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtNS0xLTEtNzg2MDg_53c6b6fc-3337-4f9d-9e9b-f5bd4e68bbde">155,857</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i363716532bad4cd0980783a148a92cf9_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtNy0xLTEtNzg2MDg_7e535de4-1cb0-484a-b6fa-4e10b9d07e20">43,300</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if2844c05b9d64df9a119f6ebf35fafea_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtOS0xLTEtNzg2MDg_70103ddf-c8de-4f02-ac14-c166df4393fe">555,079</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtMS0xLTEtNzg2MDg_affa7a3c-c389-4956-82b3-453bcbe67f0b">377,567</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtMy0xLTEtNzg2MDg_4a3255f4-2f2d-4968-b7d5-f1aaa20053ee">767,248</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtNS0xLTEtNzg2MDg_a5400758-5e77-4d87-89a5-d7b0728ee2b5">168,868</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtNy0xLTEtNzg2MDg_b0d6a40a-7ed2-42c0-bf74-0083f39fd798">76,283</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtOS0xLTEtNzg2MDg_2ef3b644-8431-4b98-9de9-882b1c084351">1,389,966</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="27" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i92c16fe3a70f4e49b13fc1ae97837fdd_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTEtMS0xLTc4NjA4_771b80dc-a1ba-4e38-9c35-a559365c3d7b">28,630</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6df611de3fcf4e4ea5f715367a0b0785_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTMtMS0xLTc4NjA4_a12ebb08-396e-4bb5-a30f-6fc189573ea6">630,494</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic78aa20b5b7e459ea9ae6c86b16c41ac_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTUtMS0xLTc4NjA4_9e10983a-0300-46a3-91b9-b4fb6e0481bd">20,157</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idec35ea930d04e55aeffbc908a770f71_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTctMS0xLTc4NjA4_3e8faf51-38eb-4b63-81a2-33b2554a183d">32,512</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i971e5962d2e6470587e3528742ba3ac5_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTktMS0xLTc4NjA4_051bbddf-4b4e-49c3-9057-3cc5dac1eea1">711,793</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7692a1ee76c64f6c90276630b19f5315_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTEtMS0xLTc4NjA4_d29e7520-beb3-4c9d-9412-1b9eac542baf">403,466</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idbcb8892b57a452bafbb13673dc4b633_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTMtMS0xLTc4NjA4_16c5c3a1-e3f1-456b-ba78-9d67f6a4e1ce">5,011</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6568f28f534649339a377c1457b00cf7_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTUtMS0xLTc4NjA4_4fe7d038-a78a-4808-860c-aafab254b71d">179,004</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5c73db8e09f4d2a8adca505eed6f629_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTctMS0xLTc4NjA4_717bfa5c-fdf5-4be8-af47-ffee85315300">40,509</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i909c4ea4d9124a3d9e46e4ebefb3a1e9_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTktMS0xLTc4NjA4_5e2e1d27-699c-445f-beef-5a0d7cc6de34">627,990</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i440bce1026014d699ffb16eb70be7748_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTEtMS0xLTc4NjA4_34c40d93-ec0f-4da3-9001-ed5d29f5b3d8">432,096</ix:nonFraction>&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTMtMS0xLTc4NjA4_6511da95-e4d8-4510-aa53-dce864fe9f63">635,505</ix:nonFraction>&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTUtMS0xLTc4NjA4_a5e36e4d-2225-45a7-bab5-9ab68dc1251d">199,161</ix:nonFraction>&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTctMS0xLTc4NjA4_31e4bf14-aa97-46d7-a023-24193ff4ff43">73,021</ix:nonFraction>&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTktMS0xLTc4NjA4_36bbff4f-abc2-4eca-97e0-0b5796aa0d35">1,339,783</ix:nonFraction>&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i88799f7c82a94bc9818931b3e9053b77_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTEtMS0xLTc4NjA4_db1e8987-65aa-40b6-9134-ef7dcbb3af51">22,833</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2c6fcadea56c411595e911bda16adecc_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTMtMS0xLTc4NjA4_cc9d9b2a-8ec9-4c67-85ba-984adcb71234">518,281</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i36f3cd03900e4cc2a90aa3f625ff95d0_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTUtMS0xLTc4NjA4_8663ab96-6814-48d4-97f8-7ce3d5580af1">52,894</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i12ac3349377f480da07ba7ee35977f8b_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTctMS0xLTc4NjA4_c89608cc-c5df-4f3f-8948-c8373146b409">22,781</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifc9dd5822864450d8ca48589af121a8b_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTktMS0xLTc4NjA4_beeffa26-2b39-4a9c-aadc-6f9ad5b05e02">616,789</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6c8309ea7d5e418495864a84218dd3e4_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTEtMS0xLTc4NjA4_7f18213f-eef7-490e-9089-c3884685774f">215,274</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i57a2da47c8f042d9807e61198d85019d_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTMtMS0xLTc4NjA4_019cd9ba-8cb4-45a4-bf9f-9b2582246131">4,533</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7e9e49ddcaa8437a8c36f414904c5fff_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTUtMS0xLTc4NjA4_e94a4ad4-ce02-4fe2-aa2b-58beb1219c3f">156,566</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibbdf974085fb4bc69c5ad773356c29e7_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTctMS0xLTc4NjA4_00255de9-e57d-4d5c-a2b8-2ffcf341cd5a">39,416</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ffdc21072b94ed2a766bc8e772c7fc4_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTktMS0xLTc4NjA4_fd5ddeab-04c9-4da6-9dae-62964ccfbdc3">415,789</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3311e70241234683b6f0365ef2d635dd_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTEtMS0xLTc4NjA4_9628020e-646c-4449-bbc6-50a57645ce7b">238,107</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2970908a29054cbc92537cec77a27af9_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTMtMS0xLTc4NjA4_03a7fc09-8c7a-4441-8a3c-5eee125f8916">522,814</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i552e925085c14096ad706c1beea1f01e_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTUtMS0xLTc4NjA4_5fdbbe9c-caf1-4a79-a2c3-71370c2ccbf5">209,460</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaf315dd0aa484d9da6b58670384cc282_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTctMS0xLTc4NjA4_8ea2b134-5c7a-435a-bfc4-532fc79d1f12">62,197</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTktMS0xLTc4NjA4_b865609b-a518-4621-9d8a-1acc2ee302c5">1,032,578</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">70</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><ix:continuation id="i8547abc8e6694a76a7704aa07805f270"><ix:nonNumeric contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" name="us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NjM_d0a99510-cebd-4c00-867f-ffa05e6b4543" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales by region or origin and long-lived assets by region of domicile for the years ended and as of December&#160;31 are as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:59.222%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.640%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North America</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9be42e649bb74294b67c9df056f9b01f_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzItMS0xLTEtNzg2MDg_c0c859b1-1b34-4965-93ca-096917aa3d8c">1,373,907</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i461c6c1e72be4da18e34aa4191acd71a_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzItMy0xLTEtNzg2MDg_5bbf192d-891d-49b6-9a98-16e20ab0aae2">1,318,795</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib700003226794c949b86d5ae230de3be_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzItNS0xLTEtNzg2MDg_d32b0e8c-3dca-4e38-8432-638c87f698d5">1,018,406</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asia</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i62bcb654a5b049099051d1bd5cb4dbad_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzQtMS0xLTEtNzg2MDg_e8e8f8c7-7558-4221-ab27-4450a171c3b0">16,059</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1c60ecb4c5645b78964809d127f9dcd_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzQtMy0xLTEtNzg2MDg_de1e89d9-4cd2-43ac-898a-03788053177f">20,988</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8e1d522438d41a09f93defccbdc4762_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzQtNS0xLTEtNzg2MDg_063675bf-86ce-4453-b12b-52ad6094267f">14,172</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzUtMS0xLTEtNzg2MDg_f200751e-1818-4395-b96d-78e006d07161">1,389,966</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzUtMy0xLTEtNzg2MDg_b9e287e3-9adf-4d71-b559-cbfebc1efeba">1,339,783</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzUtNS0xLTEtNzg2MDg_10bffb5e-d6aa-4d82-bb22-f8c2ee1cc4c3">1,032,578</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-lived assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North America</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i70dc3acdc32f4a8193f3c0fbb04b4b03_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzgtMS0xLTEtNzg2MDg_2a5e7e41-8d8a-4709-9c41-55f217189fb9">136,553</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if2f0bffb079a4b5c984352237ab43db0_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzgtMy0xLTEtNzg2MDg_693c5914-7e27-40ac-a5b5-e85e24003711">97,003</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iae0c6a40e67047bcaf2fd03193af79d2_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzgtNS0xLTEtNzg2MDg_a2149604-2724-47e0-8d39-5d90a9913791">90,685</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asia</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i395d7b63ae9245f483796e43e9548d31_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzEwLTEtMS0xLTc4NjA4_9577d9d7-4284-4cdf-ad45-0ea3c7051cf2">234</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i870a510a83a24f6eaab1a91af6c51fa1_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzEwLTMtMS0xLTc4NjA4_66c33e97-3790-4510-93ba-832b65700f37">365</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idbb6309168014c9188b1ac31b880af8b_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzEwLTUtMS0xLTc4NjA4_4f7a15c7-7a8c-4909-977c-d740136c2e72">476</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzExLTEtMS0xLTc4NjA4_4c09e204-1e36-48e1-afc6-6758faada691">136,787</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic293a1eb0344401e83175208f94528cd_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzExLTMtMS0xLTc4NjA4_f821fea4-821f-4828-a32f-e8b61d258e4d">97,368</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzExLTUtMS0xLTc4NjA4_c3eb5a0b-e84a-4665-99ce-00ab0e862b6e">91,161</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="margin-top:5pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">71</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:5pt"><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_148"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;9.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_151"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;9A.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Controls and Procedures</span></td></tr></table></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Evaluation of Disclosure Controls and Procedures</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company maintains a system of disclosure controls and procedures (as defined in Rule 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934). Management of the Company, under the supervision and with the participation of the Chief Executive Officer and the Chief Financial Officer, evaluated the effectiveness of the Company&#8217;s disclosure controls and procedures as of the end of the period covered in this report.&#160;Based upon that evaluation and the definition of disclosure controls and procedures contained in Rule 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, the Company&#8217;s Chief Executive Officer, and Chief Financial Officer have concluded that as of the end of such period the Company&#8217;s disclosure controls and procedures were effective.</span></div><div style="margin-top:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Management&#8217;s Annual Report on Internal Control Over Financial Reporting</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The management of Gibraltar Industries, Inc. is responsible for establishing and maintaining adequate internal control over financial reporting for the Company, as such term is defined in Rule 13a-15(f) under the Securities Exchange Act of 1934. Under the supervision and with the participation of management, including the Company&#8217;s Chief Executive Officer and the Chief Financial Officer, the Company conducted an evaluation of the effectiveness of internal control over financial reporting based on the framework in </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Internal Control &#8211; Integrated Framework</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> issued by the Committee of Sponsoring Organizations of the Treadway Commission </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(2013 framework</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Based on the Company&#8217;s evaluation, management concluded that the Company&#8217;s internal control over financial reporting was effective as of December&#160;31, 2022. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's acquisition of Quality Aluminum Products ("QAP") was excluded from management's annual report on internal control over financial reporting as of December 31, 2022.  The Company acquired QAP on August 22, 2022. The results of QAP are included in the Company's 2022 consolidated financial statements and were $53.9 million of total assets and $51.1 million of net assets, respectively, as of December 31, 2022, and $26.4 million and $(1.0) million of net sales and net income, respectively, for the year then ended.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The effectiveness of the Company&#8217;s internal control over financial reporting as of December&#160;31, 2022 has been audited by Ernst&#160;&amp; Young LLP, an independent registered public accounting firm, as stated in their report which is included below in this Item&#160;9A of this Annual Report on Form&#160;10-K.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Changes in Internal Control over Financial Reporting</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no changes in the Company&#8217;s internal control over financial reporting (as defined by Rule 13a-15(f)) that occurred during the three months ended December&#160;31, 2022 that have materially affected, or are reasonably likely to materially affect, the Company&#8217;s internal control over financial reporting.</span></div><div style="margin-top:6pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">72</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span><br/></span></div><div style="margin-top:18pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Report of Independent Registered Public Accounting Firm</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To the Stockholders and Board of Directors of Gibraltar Industries, Inc.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Opinion on Internal Control Over Financial Reporting</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have audited Gibraltar Industries, Inc.&#8217;s internal control over financial reporting as of December 31, 2022, based on criteria established in Internal Control&#8211;Integrated Framework issued by the Committee of Sponsoring Organizations of the Treadway Commission (2013 framework) (the COSO criteria). In our opinion, Gibraltar Industries, Inc. (the Company) maintained, in all material respects, effective internal control over financial reporting as of December 31, 2022, based on the COSO criteria.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As indicated in the accompanying Management&#8217;s Annual Report on Internal Control Over Financial Reporting, management&#8217;s assessment of and conclusion on the effectiveness of internal control over financial reporting did not include the internal controls of Quality Aluminum Products  which is included in the 2022 consolidated financial statements of the Company and constituted 4.4% and 6.1% of total and net assets, respectively, as of December 31, 2022 and 1.9% and (1.0%) of net sales and net income, respectively, for the year then ended. Our audit of internal control over financial reporting of the Company also did not include an evaluation of the internal control over financial reporting of Quality Aluminum Products. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the 2022 consolidated financial statements of the Company and our report dated February 22, 2023 expressed an unqualified opinion thereon.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis for Opinion</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;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&#8217;s Annual Report on Internal Control Over Financial Reporting. Our responsibility is to express an opinion on the Company&#8217;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.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Definition and Limitations of Internal Control Over Financial Reporting</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A company&#8217;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&#8217;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&#8217;s assets that could have a material effect on the financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">73</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">/s/ Ernst &amp; Young LLP</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Boston, Massachusetts </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February 22, 2023</span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">74</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_154"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;9B.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Other information</span></td></tr></table></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_157"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;9C.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</span></td></tr></table></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">75</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_160"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">PART III</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_163"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;10.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Directors, Executive Officers and Corporate Governance</span></td></tr></table></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding directors and executive officers of the Company, as well as the required disclosures with respect to the Company&#8217;s audit committee financial expert, is incorporated herein by reference to the information included in the Company&#8217;s 2023 Proxy Statement which will be filed with the Commission within 120 days after the end of the Company&#8217;s 2022 fiscal year.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has adopted a Code of Ethics that applies to all of the Company's directors, officers, employees and representatives, including the Company's Chief Executive Officer and Chief Financial Officer. The complete text of this Code of Ethics is available in the corporate governance section of the Company's website at www.gibraltar1.com. The Company does not intend to incorporate the contents of its website into this Annual Report on Form 10-K.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company intends to disclose future amendments to certain provisions of the Company's Code of Ethics, or waivers of such provisions, applicable to the Company's Chief Executive Officer and Chief Financial Officer on the Company's website identified above.</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_166"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;11.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Executive Compensation</span></td></tr></table></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding executive compensation is incorporated herein by reference to the information included in the Company&#8217;s 2023 Proxy Statement which will be filed with the Commission within 120 days after the end of the Company&#8217;s 2022 fiscal year.</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_169"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;12.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</span></td></tr></table></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding security ownership of certain beneficial owners and management and the Company's equity compensation plans are incorporated herein by reference to the information included in the Company&#8217;s 2023 Proxy Statement which will be filed with the Commission within 120 days after the end of the Company&#8217;s 2022 fiscal year.</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_172"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;13.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Certain Relationships and Related Transactions, and Director Independence</span></td></tr></table></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding certain relationships and related transactions and director independence is incorporated herein by reference to the information included in the Company&#8217;s 2023 Proxy Statement which will be filed with the Commission within 120 days after the end of the Company&#8217;s 2022 fiscal year.</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_175"></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;14.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Principal Accountant Fees and Services</span></td></tr></table></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding principal accounting fees and services is incorporated herein by reference to the information included in the Company&#8217;s 2023 Proxy Statement which will be filed with the Commission within 120 days after the end of the Company&#8217;s 2022 fiscal year.</span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">76</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_178"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">PART IV</span></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_181"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;15.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Exhibits and Financial Statement Schedules</span></td></tr></table></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:0.1%"></td><td style="width:0.824%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.560%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.560%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.410%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.585%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:84.261%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(a)</span></td><td colspan="12" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The following documents are filed as part of this Annual Report on Form 10K:</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Financial Statements:</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(i)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Report of Independent Registered Public Accounting Firm</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(ii)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Statements of Operations for the Years Ended December&#160;31, 2022, 2021, and  2020</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(iii)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Statements of Comprehensive Income for the Years Ended December&#160;31, 2022, 2021, and 2020</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(iv)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Balance Sheets as of December&#160;31, 2022 and 2021</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(v)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Statements of Cash Flows for the Years Ended December&#160;31, 2022, 2021, and 2020</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(vi)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Statements of Stockholders&#8217; Equity and Comprehensive Income for the Years Ended December&#160;31, 2022, 2021, and 2020</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(vii)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notes to Consolidated Financial Statements</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2)</span></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financial Statement Schedule:</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">All schedules are omitted because they are not required, or because the required information is provided in the consolidated financial statements, including the notes thereto.</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3)</span></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exhibits Required by Item 601 of Regulation S-K: The list of exhibits to this Annual Report on Form 10-K is set forth on the attached </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_184">Exhibit Index</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">. Each management contract or compensatory plan or arrangement is identified as such in the Exhibit Index.</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(b)</span></td><td colspan="12" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exhibits:</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The documents listed in the Exhibit Index are filed or furnished with this Annual Report on Form 10-K or incorporated by reference into this Annual Report on Form 10-K.</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">77</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_184"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="-sec-extract:summary"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="-sec-extract:summary;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:9.441%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.774%"></td><td style="width:0.1%"></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Exhibit&#160;Index</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">No.</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Exhibit</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/0000912562/000091256221000002/ex101equitypurchaseagreeme.htm">2.1</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Equity Purchase Agreement between Gibraltar Industries, Inc. through its indirect wholly owned Ohio corporation RBI Solar, Inc. and TerraSmart, LLC and TerraTrak, LLC dated December 31, 2020 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed January 5, 2021)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000091256221000029/ex31-gibraltarcertofinca.htm">3.1</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certificate of Incorporation of Gibraltar Industries, Inc., as amended by: (i) Certificate of Amendment of Certificate of Incorporation of Gibraltar Industries, Inc. filed on October 27, 2004, (ii) Certificate of Change of Registered Agent and Registered Office of Gibraltar Industries, Inc. filed on May 11, 2005, (iii) Certificate of Amendment of Certificate of Incorporation of Gibraltar Industries, Inc. filed on May 22, 2012, (iv) Certificate of Amendment of Certificate of Incorporation of Gibraltar Industries, Inc. filed on May 11, 2015, (v) Certificate of Change of Registered Agent and/or Registered Office filed on January 10, 2019, and (vi) Certificate of Amendment of Certificate of Incorporation of Gibraltar Industries, Inc. filed on May 6, 2021 (incorporated by reference to Exhibit&#160;3.1 to the Company&#8217;s Quarterly Report on Form&#160;10-Q filed on August 3, 2021)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256222000049/exhibit31amendedandrestate.htm">3.2</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Second Amended and Restated By-Laws of Gibraltar Industries, Inc., effective as of December 7, 2022 (incorporated by reference to Exhibit&#160;3.1 to the Company&#8217;s Current Report on Form 8-K/A filed on December 9, 2022)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="ex41descriptionofregistran.htm">4.1</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Description of Registrant's Securities</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000002/exhibit101correspondence.htm">10.1</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Correspondence dated December 17, 2018, from William P. Montague to William T. Bosway (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed January 7, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000002/exhibit102restrictivecovan.htm">10.2</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restrictive Covenants and Severance Agreement by and between Gibraltar Industries, Inc. and William T. Bosway, dated December 17, 2018 and effective January 2, 2019 (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed January 7, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000002/exhibit103cicbosway.htm">10.3</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Change in Control Agreement between the Company and William T. Bosway dated December 17, 2018 and effective January 2, 2019 (incorporated by reference to Exhibit 10.3 to the Company&#8217;s Current Report on Form 8-K filed January&#160;7, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000012/exhibit101cooofferletterfr.htm">10.4</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Correspondence dated March 8, 2019, from William T. Bosway to Patrick M. Burns (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed March 19, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256217000017/ex-102.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256217000017/ex-102.htm">5</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Change in Control Agreement between Gibraltar Industries, Inc. and Timothy F. Murphy (incorporated by reference to Exhibit&#160;10.2 to the Company&#8217;s Quarterly Report on Form&#160;10-Q filed May 5, 2017)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000095015209001698/l35594aexv10w2.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000095015209001698/l35594aexv10w2.htm">6</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Deferred Compensation Plan Amended and Restated, effective January&#160;1, 2009 (incorporated by reference to Exhibit 10.2 to the Company&#8217;s Current Report on Form 8-K filed February&#160;24, 2009)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000091256215000033/exhibit104secondamendmento.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000091256215000033/exhibit104secondamendmento.htm">7</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amended and Restated Gibraltar Industries, Inc. 2005 Equity Incentive Plan (incorporated by reference to </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000095015206010350/l23827aexv10w1.htm">Exhibit&#160;10.1</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Company&#8217;s Current Report on Form&#160;8-K filed December&#160;21, 2006), as amended by Second Amendment to Third Amendment and Restatement of Equity Incentive Plan, dated May 7, 2015 (incorporated by reference to Exhibit 10.4 to the Company&#8217;s Current Report on Form 8-K filed May 12, 2015)</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000095015209000053/l35009aexv10w3.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000095015209000053/l35009aexv10w3.htm">8</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. Omnibus Code Section 409A Compliance Policy, dated December&#160;30, 2008 (incorporated by reference to Exhibit&#160;10.3 to the Company&#8217;s Current Report on Form&#160;8-K filed January&#160;6, 2009)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000095015209001698/l35594aexv10w1.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000095015209001698/l35594aexv10w1.htm">9</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Summary Description of Annual Management Incentive Compensation Plan (incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current Report on Form 8-K filed February&#160;24, 2009)</span></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">78</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="-sec-extract:summary"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:9.441%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.774%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">No.</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Exhibit</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256222000046/exhibit101gibraltar-credit.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256222000046/exhibit101gibraltar-credit.htm">10</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Credit Agreement dated as of December 8, 2022 among Gibraltar Industries, Inc. and Gibraltar Steel Corporation of New York, as borrowers, the lenders named therein, KeyBank National Association, as administrative agent, swing line lender and issuing lender, KeyBanc Capital Markets Inc., as joint lead arranger and joint book runner, Bank of America, N.A., M&amp;T Bank, PNC Bank, National Association, as joint lead arrangers, joint book runners and co-syndication agents, and Comerica Bank, TD Bank, N.A. and Wells Fargo Bank, National Association, as co-documentation agents (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed December 9, 2022) (1)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256217000019/exhibit101-firstamendmento.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256217000019/exhibit101-firstamendmento.htm">11</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2015 Equity Incentive Plan (incorporated by reference to </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000091256216000064/ex-104equityincentiveplan.htm">Exhibit 10.4</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Company's Current Report on Form 8-K filed January 7, 2016), and as amended by Gibraltar Industries, Inc. 2015 Equity Incentive Plan First Amendment dated May 5, 2017 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed May 9, 2017)</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000066/ex-101msppplansecondamendm.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000066/ex-101msppplansecondamendm.htm">12</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2015 Management Stock Purchase Plan dated May 7, 2015 (incorporated by reference to </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000091256215000033/exhibit105firstamendmentof.htm">Exhibit 10.5</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Company's Current Report on Form 8-K filed May 12, 2015), as amended by the First Amendment to the Management Stock Purchase Plan dated December 31, 2015 (incorporated by reference to </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/912562/000091256216000064/ex-105mspp.htm">Exhibit 10.5</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Company's Current Report on Form 8-K filed January 7, 2016), and further amended by the Gibraltar Industries, Inc. Management Stock Purchase Plan Second Amendment dated January 28, 2016 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed January 28, 2016)</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256218000014/exhibit101gibraltarindustr.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256218000014/exhibit101gibraltarindustr.htm">13</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2018 Equity Incentive Plan dated May 4, 2018 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed May 7, 2018)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256218000038/ex101-2018managementstockp.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256218000038/ex101-2018managementstockp.htm">14</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2018 Management Stock Purchase Plan dated November 1, 2018 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed November 1, 2018)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256215000033/exhibit103formofaward-rest.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256215000033/exhibit103formofaward-rest.htm">15</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2015 Equity Incentive Plan Form of Award of Restricted Stock dated May 7, 2015 (incorporated by reference to Exhibit 10.3 to the Company's Current Report on Form 8-K filed May 12, 2015)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256217000002/ex-101awardofperformanceun.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256217000002/ex-101awardofperformanceun.htm">16</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2015 Equity Incentive Plan Form of Award of Performance Units dated December 31, 2015 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed February 3, 2017)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000064/ex-102awardofnonxqualified.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000064/ex-102awardofnonxqualified.htm">17</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2015 Equity Incentive Plan Form of Award of Non-Qualified Options dated December 31, 2015 (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed January 7, 2016)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000068/ex-102gibraltarindustriesi.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000068/ex-102gibraltarindustriesi.htm">18</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2015 Equity Incentive Plan Form of Award of Restricted Units dated December 31, 2015 (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed February 5, 2016)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000068/ex-103gibraltarindustriesi.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000068/ex-103gibraltarindustriesi.htm">19</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2015 Equity Incentive Plan Form of Award of Restricted Units dated December 31, 2015 (incorporated by reference to Exhibit 10.3 to the Company's Current Report on Form 8-K filed February 5, 2016)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256222000020/exhibit101-amended2016plan.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256222000020/exhibit101-amended2016plan.htm">20</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. Amended and Restated 2016 Stock Plan for Non-Employee Directors (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed May 5, 2022)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256222000020/exhibit102-formofaward.htm">10.21</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. Amended and Restated 2016 Stock Plan for Non-Employee Directors Form of Award of Common Stock (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed May 5, 2022)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000085/exhibit102non-employeedire.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256216000085/exhibit102non-employeedire.htm">22</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. Non-Employee Director Stock Deferral Plan (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed May 10, 2016)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1022-formofpsuaward2019x.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1022-formofpsuaward2019x.htm">23</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2018 Equity Incentive Plan Form of Award of Performance Units dated May 4, 2018 (incorporated by reference to Exhibit 10.22 to the Company's Annual Report on Form 10-K for the year ended December 31, 2018 filed February 27, 2019)</span></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">79</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="-sec-extract:summary"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:9.441%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.774%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">No.</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Exhibit</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1023-formofexecutiveltip.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1023-formofexecutiveltip.htm">24</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2018 Equity Incentive Plan Form of Award of Restricted Units dated May 4, 2018 (incorporated by reference to Exhibit 10.23 to the Company's Annual Report on Form 10-K for the year ended December 31, 2018 filed February 27, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1024-formofnonxexecutive.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1024-formofnonxexecutive.htm">25</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2018 Equity Incentive Plan Form of Award of Restricted Units dated May 4, 2018 (incorporated by reference to Exhibit 10.24 to the Company's Annual Report on Form 10-K for the year ended December 31, 2018 filed February 27, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1025-formceodiscretionar.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1025-formceodiscretionar.htm">26</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2018 Equity Incentive Plan Form of Award of Restricted Units dated May 4, 2018 (incorporated by reference to Exhibit 10.25 to the Company's Annual Report on Form 10-K for the year ended December 31, 2018 filed February 27, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1026-ceodiscretionaryawa.htm">10.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256219000009/ex1026-ceodiscretionaryawa.htm">27</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gibraltar Industries, Inc. 2018 Equity Incentive Plan Form of Award of Restricted Units dated May 4, 2018 (incorporated by reference to Exhibit 10.26 to the Company's Annual Report on Form 10-K for the year ended December 31, 2018 filed February 27, 2019)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/912562/000091256222000041/exhibit101burnsseparationa.htm">10.28</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Separation Agreement and General Release with Patrick M. Burns dated December 2, 2022 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed December 5, 2022)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="q42022exhibit211.htm">21.1</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subsidiaries of the Registrant</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="q42022exhibit231-eyconsent.htm">23.1</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consent of Independent Registered Public Accounting Firm</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="q42022exhibit311.htm">31.1</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification of President and Chief Executive Officer pursuant to Section&#160;302 of the Sarbanes-Oxley Act of 2002</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="q42022exhibit312.htm">31.2</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification of Senior Vice President and Chief Financial Officer pursuant to Section&#160;302 of the Sarbanes-Oxley Act of 2002</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="q42022exhibit321.htm">32.1</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">***</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification of President and Chief Executive Officer pursuant to Title 18, United States Code, Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="q42022exhibit322.htm">32.2</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">***</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification of Senior Vice President and Chief Financial Officer pursuant to Title 18, United States Code, Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.INS**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inline XBRL Instance Document **</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.SCH**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inline XBRL Taxonomy Extension Schema Document**</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.CAL**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inline XBRL Taxonomy Extension Calculation Linkbase Document**</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.LAB**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inline XBRL Taxonomy Extension Label Linkbase Document **</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.PRE**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inline XBRL Taxonomy Extension Presentation Linkbase Document **</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.DEF**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inline XBRL Taxonomy Extension Definition Linkbase Document **</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cover Page Interactive Data File (formated as Inline XBRL and contained in Exhibit 101)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:3pt"><td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Schedules and exhibits to this agreement have been omitted pursuant to Item 601(a)(5) of Regulation S-K. The Company agrees to furnish any omitted schedules or exhibits upon the request of the Securities and Exchange Commission. A list of the omitted schedules and exhibits to this agreement is set forth in the agreement.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Document is a management contract or compensatory plan or agreement.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Submitted electronically with this Annual Report on Form 10-K.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">***</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Documents are furnished not filed.</span></td></tr></table></div><div><span><br/></span></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_187"></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:90.116%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Item&#160;16.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%;text-decoration:underline">Form 10-K Summary</span></td></tr></table></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="padding-left:36pt"><span><br/></span></div><div style="padding-left:36pt"><span><br/></span></div><div style="padding-left:36pt"><span><br/></span></div><div style="padding-left:36pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">80</span></div></div></div><div id="i891eeac0f86e4df7b4e8c19bdfd47fcf_190"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">Table of Co</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">n</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="#i891eeac0f86e4df7b4e8c19bdfd47fcf_7">tents</a></span></div></div><div style="text-align:center"><span><br/></span></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SIGNATURES</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the requirements of Section&#160;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.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.660%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:37.936%"></td><td style="width:0.1%"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GIBRALTAR INDUSTRIES, INC.</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ William T. Bosway</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">William T. Bosway</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and<br/>Chief Executive Officer</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dated:</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the Registrant and in the capacities and on the dates indicated.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:30.629%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.055%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.614%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.454%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.548%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">SIGNATURE</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">TITLE</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">DATE</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ William T. Bosway</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President, Chief Executive Officer and Chairman of the Board of Directors (principal executive officer) </span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr style="height:18pt"><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">William T. Bosway</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Timothy F. Murphy</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Vice President and Chief Financial Officer (principal financial and accounting officer)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr style="height:18pt"><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Timothy F. Murphy</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Atlee Valentine Pope</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lead Independent Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Atlee Valentine Pope</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Mark G. Barberio</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Mark G. Barberio</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Craig A. Hindman</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Craig A. Hindman</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Gwendolyn G. Mizell</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gwendolyn G. Mizell</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Linda K. Myers</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Linda K. Myers</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ James B. Nish</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">James B. Nish</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Manish H. Shah</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Manish H. Shah</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">81</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-4.1
<SEQUENCE>2
<FILENAME>ex41descriptionofregistran.htm
<DESCRIPTION>EX-4.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="i458c9cb769864371bda49ef44a42e312_1"></div><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:139%">EXHIBIT 4.1</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">DESCRIPTION OF THE REGISTRANT&#8217;S SECURITIES</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">REGISTERED PURSUANT TO SECTION 12 OF THE</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">SECURITIES EXCHANGE ACT OF 1934</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">As of&#160;December 31, 2022, Gibraltar Industries Inc. (the &#8220;Company&#8221;) had one class of securities, its Common Stock, par value $0.01 per share (the &#8220;Common Stock&#8221;), registered under Section 12 of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;). The Company&#8217;s Common Stock is listed on The Nasdaq Stock Market LLC under the trading symbol &#8220;ROCK&#8221;.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">DESCRIPTION OF COMMON STOCK</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The following is a description of the rights of our Common Stock and certain related provisions of the Company&#8217;s Certificate of Incorporation, as amended, (the &#8220;Certificate&#8221;), the Company&#8217;s Second Amended and Restated By-laws (the &#8220;Bylaws&#8221;) and the Delaware General Corporation Law which have an impact on the rights of holders of our Common Stock. This description is qualified in its entirety by, and should be read in conjunction with, the Certificate, Bylaws and the Delaware General Corporation Law.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">Authorized Capital Stock</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The Company&#8217;s authorized capital stock consists of (a) 100,000,000 shares of Common Stock, and (b) 10,000,000 shares of preferred stock, par value $.01 per share.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">Common Stock</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">Fully Paid and Nonassessable</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">All of the outstanding shares of the Company&#8217;s Common Stock are fully paid and nonassessable.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">Voting Rights</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The holders of shares of Common Stock are entitled to one vote per share on all matters to be voted on by such holders. Holders of shares of Common Stock are not entitled to cumulative voting rights.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">Alienability</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">Our Common Stock is not subject to any general restriction on transfer under our Certificate or our Bylaws.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">Dividends</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The holders of shares of Common Stock are entitled to receive such dividends, if any, as may be declared from time to time by the Company&#8217;s Board of Directors, in its discretion, from funds legally available therefor.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">Right to Receive Liquidation Distributions</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">Upon liquidation, dissolution or winding-up, the holders of shares of Common Stock are entitled to receive pro rata all assets remaining available for distribution to holders of such shares after payment of our outstanding obligations and liabilities.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">No Preemptive, Conversion, Redemption, Subscription or Similar Rights</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The Common Stock has no preemptive or other subscription rights, and there are no conversion rights or redemption or sinking fund provisions with respect to such shares of Common Stock.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">No Classification of Directors</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">We do not have staggered terms or classes of directors.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:139%">Preferred Stock</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">We may issue shares of our preferred stock from time to time, in one or more series. Our board of directors will determine the rights, preferences and privileges of the shares of each wholly unissued series, and any qualifications, limitations or restrictions thereon, including dividend rights, conversion rights, preemptive rights, voting rights, terms of redemption or repurchase, liquidation preferences , sinking fund terms and the number of shares constituting any series or the designation of any series. Conversion may be mandatory or at the holder&#8217;s option and would be at prescribed conversion rates.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">If we designate any series of preferred stock, we will fix the rights, preferences and privileges of the preferred stock of such series, as well as any qualifications, limitations or restrictions thereon, in the certificate of designation we file relating to that series, without submitting the same to any vote of the holders of Common Stock for approval.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">Anti-Takeover Provisions of the Certificate, Bylaws and Delaware Law</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">Provisions of the Certificate and Bylaws may delay or discourage transactions involving an actual or potential change in control of the Company or change in its management, including transactions in which stockholders might otherwise receive a premium for their shares, or transactions that its stockholders might otherwise deem to be in their best interests. Among other things, the Certificate and Bylaws&#58;</font></div><div><font><br></font></div><div style="margin-bottom:0.08pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">provide that any vacancy on the Company&#8217;s Board of Directors for any reason, or any newly created directorships resulting from an increase in the number of directors shall be filled by a majority of the Board of Directors then in office (even if, in the case of a vacancy not resulting from an increase in the size of the Board, said directors constitute less than a quorum).</font></td></tr></table></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">provide that stockholders of record seeking to present proposals at a meeting of stockholders or to nominate candidates for election as directors at a meeting of stockholders must provide notice in writing in a timely manner as provided in our Bylaws, which also specify requirements as to the form and content of such a stockholder&#8217;s notice</font></td></tr></table></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">provide that special stockholder meetings may be requested or called at any time for any purpose only by the Company&#8217;s Board of Directors, the Chairman of the Board, or the President&#59; provided, however that special stockholder meetings also shall be called by the Board of Directors, the Chairman of the Board, the President, or the Secretary upon the written request of stockholders holding in the aggregate 25% or more of the total outstanding capital stock of the Company, subject to certain requirements as to the timing, form and content of such stockholder request</font></td></tr></table></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">requires that certain transactions between the Company and 20 percent or more stockholders, and certain affiliates or assignees (&#8220;Interested Stockholder&#8221;) must be approved by the holders of at least 80 percent of the voting power of the then outstanding shares of the Company&#8217;s voting capital stock, unless the transaction (i) is approved by a majority of all the directors who are not affiliated with the Interested Stockholder and were directors of the Company before the date the Interested Stockholder became an Interested Stockholder, or certain successors of any such Disinterested Director or (ii) complies with certain requirements as to the minimum value and form of consideration the holders of outstanding capital stock must receive to avoid the 80 percent voting requirement</font></td></tr></table></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The foregoing approval requirements for transactions involving an Interested Stockholder apply to&#58;</font></div><div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:42.628%"><tr><td style="width:1.0%"></td><td style="width:16.945%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:80.855%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:125%">(a)</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">Certain mergers and consolidations&#59;</font></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:6.592%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:91.208%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:125%">(b)</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">Sales and other specific dispositions of assets of the Company or of a subsidiary having a Fair Market Value of $50 million or more&#59;</font></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:6.592%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:91.208%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:125%">(c)</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">The issuance or transfer by the Company or by a subsidiary of securities in exchange for cash, securities or other property having an aggregate Fair Market Value of $50 million or more&#59;</font></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:6.592%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:91.208%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:125%">(d)</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">The adopting of plan or proposal for liquidation or dissolution of the Company proposed by an Interested Stockholder&#59;or</font></td></tr></table></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:6.592%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:91.208%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">(e)</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">Reclassifications recapitalizations, merger or consolidations of the Company and a subsidiary, or any other transaction having the effect of increasing the proportion of our outstanding shares owned by an Interested Stockholder.</font></td></tr></table></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">As a Delaware corporation, the Company is subject to the provisions of Section 203 of the Delaware General Corporation Law, which restricts certain transactions between a corporation and a person owning 15 percent or more of the corporation&#8217;s outstanding voting stock. Section 203 refers to a 15 percent or more stockholder as an &#8220;interested stockholder.&#8221; Section 203 restricts these transactions for a period of three years from the date the stockholder acquires 15 percent or more of our outstanding voting stock. With some exceptions, unless the transaction is approved by the board of directors and the holders of at least two-thirds of our outstanding voting stock, Section 203 prohibits significant business transactions such as&#58;</font></div><div style="text-align:justify;text-indent:-18pt"><font><br></font></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">a merger with, disposition of significant assets to or receipt of disproportionate financial benefits by the interested stockholder, and</font></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">any other transaction that would increase the interested stockholder&#8217;s proportionate ownership of any class or series of our capital stock.</font></td></tr></table></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The shares held by the interested stockholder are not counted as outstanding when calculating the two-thirds of the outstanding voting stock needed for approval.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">The prohibition against these transactions does not apply if&#58;</font></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">prior to the time that any stockholder became an interested stockholder, the board of directors approved either the business combination or the transaction in which such stockholder acquired 15 percent or more of our outstanding voting stock, or</font></td></tr></table></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:10.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.362%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">&#8226;</font></td><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:125%">the interested stockholder owns at least 85 percent of our outstanding voting stock as a result of a transaction in which such stockholder acquired 15 percent or more of our outstanding voting stock. Shares held by persons who are both directors and officers or by some types of employee stock plans are not counted as outstanding when making this calculation</font></td></tr></table></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:139%">Directors&#8217; Liability</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">Our Certificate provides that to the fullest extent permitted by the Delaware General Corporation Law a director shall not be personally liable to us or our stockholders for monetary damages for breach of fiduciary duty as a director.</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:139%">Our Certificate provides that we shall indemnify our directors and officers to the fullest extent authorized by the Delaware General Corporation Law. We are also required to advance expenses, as incurred, to our directors in connection with a legal proceeding to the fullest extent permitted by Delaware Law, subject to receipt of an undertaking by such director or officer to repay such amount if it is ultimately determined that such director or officer is not entitled to be indemnified by the Company</font></div><div><font><br></font></div><div><font><br></font></div><div style="margin-bottom:8pt"><font><br></font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21.1
<SEQUENCE>3
<FILENAME>q42022exhibit211.htm
<DESCRIPTION>EX-21.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="i56815ffb324d49b68a0057319836d07e_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 21.1</font></div><div><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SUBSIDIARIES</font></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a list of the subsidiaries of Gibraltar Industries, Inc. as of December&#160;31, 2022.  The names of indirectly owned subsidiaries are indented under the names of their respective parent corporations&#58;</font></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:4.024%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:67.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:25.402%"></td><td style="width:0.1%"></td></tr><tr><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Appleton Supply Company, Inc.</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">D.S.B. Holding Corp.</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="6" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The D.S. Brown Company</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Florence Corporation</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Illinois</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Florence Corporation of Kansas</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Kansas</font></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gibraltar Industries Holding Company (UK) Limited</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United Kingdom</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rough Brothers Greenhouse Manufacturing (Shanghai) Co., Ltd</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">China</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RBI Solar KK</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Japan</font></td></tr><tr><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gibraltar Steel Corporation of New York</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New York</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Southeastern Metals Manufacturing Company, Inc.</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Florida</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pacific Awards Metals, Inc.</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">California</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Noll&#47;Norwesco, LLC</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Air Vent Inc.</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Package Concierge, Inc.</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Quality Aluminum Products, LLC</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rough Brothers Holding Co., Inc.</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Terrasmart, Inc.</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rough Brothers Manufacturing, Inc.</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prospiant, Inc.</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Apeks, LLC</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thermo Energy Solutions, Inc.</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canada</font></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Solar Group, Inc.</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Mailboxes, LLC</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>4
<FILENAME>q42022exhibit231-eyconsent.htm
<DESCRIPTION>EX-23.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="i89b4de82ebd54596b372fbf8eef25fca_1"></div><div style="min-height:72pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 23.1</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Consent of Independent Registered Public Accounting Firm</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We consent to the incorporation by reference in the following Registration Statements&#58;</font></div><div style="text-align:justify"><font><br></font></div><div style="padding-left:40.5pt;text-align:justify;text-indent:-27pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:112%">(1)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:13.57pt">Registration Statement (Form S-8 No. 333-143582), as amended, pertaining to the Gibraltar Industries, Inc. 2005 Equity Incentive Plan,</font></div><div style="padding-left:40.5pt;text-align:justify;text-indent:-27pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:112%">(2)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:13.57pt">Registration Statement (Form S-8 No. 333-147117) pertaining to the registration of 437,911 shares of its common stock related to the Gibraltar Industries, Inc. 2005 Equity Incentive Plan,</font></div><div style="padding-left:40.5pt;text-align:justify;text-indent:-27pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:112%">(3)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:13.57pt">Registration Statement (Form S-8 No. 333-172588), as amended, pertaining to the registration of 750,000 shares of its common stock related to the Gibraltar Industries, Inc. 2005 Equity Incentive Plan,</font></div><div style="padding-left:40.5pt;text-align:justify;text-indent:-27pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:112%">(4)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:13.57pt">Registration Statement (Form S-8 No. 333-204415), as amended, pertaining to the Gibraltar Industries, Inc. 2015 Equity Incentive Plan,</font></div><div style="padding-left:40.5pt;text-align:justify;text-indent:-27pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:112%">(5)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:13.57pt">Registration Statements (Form S-8 Nos. 333-211347 and 333-264706), as amended, pertaining to the Gibraltar Industries, Inc. 2016 Stock Plan for Non-Employee Directors, and</font></div><div style="padding-left:40.5pt;text-align:justify;text-indent:-27pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:112%">(6)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:13.57pt">Registration Statement (Form S-8 No. 333-224877), as amended, pertaining to the Gibraltar Industries, Inc. 2018 Equity Incentive Plan&#59;</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">of our reports dated February 22, 2023, with respect to the consolidated financial statements of Gibraltar Industries, Inc. and the effectiveness of internal control over financial reporting of Gibraltar Industries, Inc. included in this Annual Report (Form 10-K) for the year ended December 31, 2022.</font></div><div style="text-align:justify"><font><br></font></div><div style="padding-left:288pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#47;s&#47; Ernst &#38; Young LLP</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Boston, Massachusetts</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February 22, 2023</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font><br></font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>5
<FILENAME>q42022exhibit311.htm
<DESCRIPTION>EX-31.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="ic3f6c49a1539438285ba4b4c2987a0df_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 31.1</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">CERTIFICATIONS</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, William T. Bosway, certify that&#58;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">I have reviewed this annual report on Form 10-K of Gibraltar Industries, Inc.&#59;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have&#58;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">evaluated the effectiveness of the registrant&#8217;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&#59; and</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:4.765%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.281%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.627%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:49.927%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; William T. Bosway</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">William T. Bosway</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>6
<FILENAME>q42022exhibit312.htm
<DESCRIPTION>EX-31.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="i550c66fb155148c191c49b7c99a81a61_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 31.2</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">CERTIFICATIONS</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Timothy F. Murphy, certify that&#58;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">I have reviewed this annual report on Form 10-K of Gibraltar Industries, Inc.&#59;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have&#58;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">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&#59;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">evaluated the effectiveness of the registrant&#8217;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&#59; and</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="margin-top:12pt;padding-left:45pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.67pt">The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="margin-top:12pt;padding-left:90pt;text-indent:-45pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:36.11pt">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:4.756%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.251%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.740%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:49.853%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Timothy F. Murphy</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Timothy F. Murphy</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Vice President and<br>Chief Financial Officer</font></td></tr></table></div><div><font><br></font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>7
<FILENAME>q42022exhibit321.htm
<DESCRIPTION>EX-32.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="i9f12a05fd2084b9687a3d256dc274e28_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 32.1</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CERTIFICATION OF PRESIDENT AND CHIEF EXECUTIVE OFFICER</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PURSUANT TO TITLE 18, UNITED STATES CODE, SECTION 1350, AS ADOPTED PURSUANT TO</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, William T. Bosway, President and Chief Executive Officer, of Gibraltar Industries, Inc. (the &#8220;Company&#8221;), certify, pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C. Section&#160;1350, that&#58;</font></div><div style="margin-top:6pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Annual Report on Form 10-K of the Company for the year ended December&#160;31, 2022 (the &#8220;Report&#8221;) fully complies with the requirements of Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m)&#59; and</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt;text-align:right"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:216.00pt"><tr><td style="width:1.0pt"></td><td style="width:214.00pt"></td><td style="width:1.0pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; William T. Bosway</font></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">William T. Bosway</font></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</font></td></tr></table></div><div style="margin-top:7pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A signed original of this written statement required by Section&#160;906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.</font></div><div style="margin-top:12pt"><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>8
<FILENAME>q42022exhibit322.htm
<DESCRIPTION>EX-32.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="ib2f9f1f0322d416d8569c37da6346ba6_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 32.2</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CERTIFICATION OF SENIOR VICE PRESIDENT AND CHIEF FINANCIAL OFFICER</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PURSUANT TO TITLE 18, UNITED STATES CODE, SECTION 1350, AS ADOPTED PURSUANT TO</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Timothy F. Murphy, Senior Vice President and Chief Financial Officer, of Gibraltar Industries, Inc. (the &#8220;Company&#8221;), certify, pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C. Section&#160;1350, that&#58;</font></div><div style="margin-top:6pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Annual Report on Form 10-K of the Company for the year ended December&#160;31, 2022 (the &#8220;Report&#8221;) fully complies with the requirements of Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m)&#59; and</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt;text-align:right"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:249.75pt"><tr><td style="width:1.0pt"></td><td style="width:247.75pt"></td><td style="width:1.0pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Timothy F. Murphy</font></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Timothy F. Murphy</font></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Vice President and Chief Financial Officer</font></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</font></td></tr></table></div><div style="margin-top:7pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A signed original of this written statement required by Section&#160;906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.</font></div><div style="margin-top:12pt"><font><br></font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>9
<FILENAME>rock-20221231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:494ce7ad-dd21-4422-be07-151863b91ba7,g:883578fa-a7f5-4214-bb5b-e80105339f54-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:rock="http://www.gibraltar1.com/20221231" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.gibraltar1.com/20221231">
  <xs:import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rock-20221231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rock-20221231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rock-20221231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rock-20221231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.gibraltar1.com/role/CoverPage">
        <link:definition>0000001 - Document - Cover Page</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AuditInformation" roleURI="http://www.gibraltar1.com/role/AuditInformation">
        <link:definition>0000002 - Document - Audit Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofOperations" roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations">
        <link:definition>0000003 - Statement - Consolidated Statements of Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofComprehensiveIncome" roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome">
        <link:definition>0000004 - Statement - Consolidated Statements of Comprehensive Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheets" roleURI="http://www.gibraltar1.com/role/ConsolidatedBalanceSheets">
        <link:definition>0000005 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheetsParenthetical" roleURI="http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical">
        <link:definition>0000006 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofCashFlows" roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows">
        <link:definition>0000007 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofStockholdersEquity" roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity">
        <link:definition>0000008 - Statement - Consolidated Statements of Stockholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofStockholdersEquityParenthetical" roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical">
        <link:definition>0000009 - Statement - Consolidated Statements of Stockholders' Equity (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPolicies" roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies">
        <link:definition>0000010 - Disclosure - Summary of Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueNotes" roleURI="http://www.gibraltar1.com/role/RevenueNotes">
        <link:definition>0000011 - Disclosure - Revenue (Notes)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccountsReceivable" roleURI="http://www.gibraltar1.com/role/AccountsReceivable">
        <link:definition>0000012 - Disclosure - Accounts Receivable</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Inventories" roleURI="http://www.gibraltar1.com/role/Inventories">
        <link:definition>0000013 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyPlantandEquipment" roleURI="http://www.gibraltar1.com/role/PropertyPlantandEquipment">
        <link:definition>0000014 - Disclosure - Property, Plant, and Equipment</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Acquisitions" roleURI="http://www.gibraltar1.com/role/Acquisitions">
        <link:definition>0000015 - Disclosure - Acquisitions</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssets" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssets">
        <link:definition>0000016 - Disclosure - Goodwill and Related Intangible Assets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccruedExpenses" roleURI="http://www.gibraltar1.com/role/AccruedExpenses">
        <link:definition>0000017 - Disclosure - Accrued Expenses</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Debt" roleURI="http://www.gibraltar1.com/role/Debt">
        <link:definition>0000018 - Disclosure - Debt</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PensionandOtherPostretirementBenefits" roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefits">
        <link:definition>0000019 - Disclosure - Pension and Other Postretirement Benefits</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccumulatedOtherComprehensiveIncomeLoss" roleURI="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLoss">
        <link:definition>0000020 - Disclosure - Accumulated Other Comprehensive Income (Loss)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensation" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensation">
        <link:definition>0000021 - Disclosure - Equity-Based Compensation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurements" roleURI="http://www.gibraltar1.com/role/FairValueMeasurements">
        <link:definition>0000022 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DiscontinuedOperations" roleURI="http://www.gibraltar1.com/role/DiscontinuedOperations">
        <link:definition>0000023 - Disclosure - Discontinued Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ExitActivityCostsandAssetImpairments" roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairments">
        <link:definition>0000024 - Disclosure - Exit Activity Costs and Asset Impairments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxes" roleURI="http://www.gibraltar1.com/role/IncomeTaxes">
        <link:definition>0000025 - Disclosure - Income Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsperShare" roleURI="http://www.gibraltar1.com/role/EarningsperShare">
        <link:definition>0000026 - Disclosure - Earnings per Share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Leases" roleURI="http://www.gibraltar1.com/role/Leases">
        <link:definition>0000027 - Disclosure - Leases</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingencies" roleURI="http://www.gibraltar1.com/role/CommitmentsandContingencies">
        <link:definition>0000028 - Disclosure - Commitments and Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformation" roleURI="http://www.gibraltar1.com/role/SegmentInformation">
        <link:definition>0000029 - Disclosure - Segment Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesPolicies" roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies">
        <link:definition>0000030 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesTables" roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables">
        <link:definition>0000031 - Disclosure - Summary of Significant Accounting Policies (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueTables" roleURI="http://www.gibraltar1.com/role/RevenueTables">
        <link:definition>0000032 - Disclosure - Revenue (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccountsReceivableTables" roleURI="http://www.gibraltar1.com/role/AccountsReceivableTables">
        <link:definition>0000033 - Disclosure - Accounts Receivable (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesTables" roleURI="http://www.gibraltar1.com/role/InventoriesTables">
        <link:definition>0000034 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyPlantandEquipmentTables" roleURI="http://www.gibraltar1.com/role/PropertyPlantandEquipmentTables">
        <link:definition>0000035 - Disclosure - Property, Plant, and Equipment (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsTables" roleURI="http://www.gibraltar1.com/role/AcquisitionsTables">
        <link:definition>0000036 - Disclosure - Acquisitions (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssetsTables" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables">
        <link:definition>0000037 - Disclosure - Goodwill and Related Intangible Assets (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccruedExpensesTables" roleURI="http://www.gibraltar1.com/role/AccruedExpensesTables">
        <link:definition>0000038 - Disclosure - Accrued Expenses (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtTables" roleURI="http://www.gibraltar1.com/role/DebtTables">
        <link:definition>0000039 - Disclosure - Debt (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PensionandOtherPostretirementBenefitsTables" roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables">
        <link:definition>0000040 - Disclosure - Pension and Other Postretirement Benefits (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccumulatedOtherComprehensiveIncomeLossTables" roleURI="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossTables">
        <link:definition>0000041 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationTables" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationTables">
        <link:definition>0000042 - Disclosure - Equity-Based Compensation (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DiscontinuedOperationsTables" roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsTables">
        <link:definition>0000043 - Disclosure - Discontinued Operations (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ExitActivityCostsandAssetImpairmentsTables" roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables">
        <link:definition>0000044 - Disclosure - Exit Activity Costs and Asset Impairments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesTables" roleURI="http://www.gibraltar1.com/role/IncomeTaxesTables">
        <link:definition>0000045 - Disclosure - Income Taxes (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsperShareTables" roleURI="http://www.gibraltar1.com/role/EarningsperShareTables">
        <link:definition>0000046 - Disclosure - Earnings per Share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesTables" roleURI="http://www.gibraltar1.com/role/LeasesTables">
        <link:definition>0000047 - Disclosure - Leases (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationTables" roleURI="http://www.gibraltar1.com/role/SegmentInformationTables">
        <link:definition>0000048 - Disclosure - Segment Information (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails" roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails">
        <link:definition>0000049 - Disclosure - Summary of Significant Accounting Policies (Summary of Activity Recorded within the Allowance for Doubtful Accounts) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesNarrativeDetails" roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails">
        <link:definition>0000050 - Disclosure - Summary of Significant Accounting Policies (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails" roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails">
        <link:definition>0000051 - Disclosure - Summary of Significant Accounting Policies (Summary of Interest Capitalized and Depreciation Expense) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueNarrativeDetails" roleURI="http://www.gibraltar1.com/role/RevenueNarrativeDetails">
        <link:definition>0000052 - Disclosure - Revenue - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueContractAssetsandLiabilitiesDetails" roleURI="http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails">
        <link:definition>0000053 - Disclosure - Revenue - Contract Assets and Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccountsReceivableDetails" roleURI="http://www.gibraltar1.com/role/AccountsReceivableDetails">
        <link:definition>0000054 - Disclosure - Accounts Receivable (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesScheduleofInventoriesDetails" roleURI="http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails">
        <link:definition>0000055 - Disclosure - Inventories (Schedule of Inventories) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails" roleURI="http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails">
        <link:definition>0000056 - Disclosure - Inventories (Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyPlantandEquipmentDetails" roleURI="http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails">
        <link:definition>0000057 - Disclosure - Property, Plant, and Equipment (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsNarrativeDetails" roleURI="http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails">
        <link:definition>0000058 - Disclosure - Acquisitions (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" roleURI="http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails">
        <link:definition>0000059 - Disclosure - Acquisitions (Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsScheduleofAcquiredIntangibleAssetsDetails" roleURI="http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails">
        <link:definition>0000060 - Disclosure - Acquisitions (Schedule of Acquired Intangible Assets) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsAcquisitionRelatedCostsDetails" roleURI="http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails">
        <link:definition>0000061 - Disclosure - Acquisitions (Acquisition Related Costs) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails">
        <link:definition>0000062 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Changes in Carrying Amount of Goodwill) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssetsNarrativeDetails" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails">
        <link:definition>0000063 - Disclosure - Goodwill and Related Intangible Assets (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails">
        <link:definition>0000064 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Acquired Intangible Assets) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails">
        <link:definition>0000065 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Impairment Charges) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails">
        <link:definition>0000066 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Amortization Expense) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails" roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails">
        <link:definition>0000067 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Future Amortization Expense) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccruedExpensesDetails" roleURI="http://www.gibraltar1.com/role/AccruedExpensesDetails">
        <link:definition>0000068 - Disclosure - Accrued Expenses (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtScheduleofLongtermDebtDetails" roleURI="http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails">
        <link:definition>0000069 - Disclosure - Debt (Schedule of Long-term Debt) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtNarrativeDetails" roleURI="http://www.gibraltar1.com/role/DebtNarrativeDetails">
        <link:definition>0000070 - Disclosure - Debt (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtScheduleofCashPaidforInterestDetails" roleURI="http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails">
        <link:definition>0000071 - Disclosure - Debt (Schedule of Cash Paid for Interest) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails" roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails">
        <link:definition>0000072 - Disclosure - Pension and Other Postretirement Benefits (Schedule of Total Expense for All Retirement Plans) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails" roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails">
        <link:definition>0000073 - Disclosure - Pension and Other Postretirement Benefits (Changes in the Accumulated Postretirement Benefit Obligation) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails" roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails">
        <link:definition>0000074 - Disclosure - Pension and Other Postretirement Benefits (Amounts Recognized in the Consolidated Financial Statements) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails" roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails">
        <link:definition>0000075 - Disclosure - Pension and Other Postretirement Benefits (Components of Net Periodic Postretirement Benefit Cost) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails" roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails">
        <link:definition>0000076 - Disclosure - Pension and Other Postretirement Benefits (Expected Benefit Payments from the Plan) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccumulatedOtherComprehensiveIncomeLossDetails" roleURI="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails">
        <link:definition>0000077 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationNarrativeDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails">
        <link:definition>0000078 - Disclosure - Equity-Based Compensation (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails">
        <link:definition>0000079 - Disclosure - Equity-Based Compensation (Summary of Compensation Expense Connection with Awards) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails">
        <link:definition>0000080 - Disclosure - Equity-Based Compensation (Schedule of Number of Awards and Weighted Average Grant Date Fair Value) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails">
        <link:definition>0000081 - Disclosure - Equity-Based Compensation (Summary of Ranges of Outstanding and Exercisable Options) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationSummaryofStockOptionTransactionsDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails">
        <link:definition>0000082 - Disclosure - Equity-Based Compensation (Summary of Stock Option Transactions) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails">
        <link:definition>0000083 - Disclosure - Equity-Based Compensation (Summary of Information about Restricted Stock Units and Weighted Average Grant Date Fair Value) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails">
        <link:definition>0000084 - Disclosure - Equity-Based Compensation (Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails" roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails">
        <link:definition>0000085 - Disclosure - Equity-Based Compensation (Cash Paid to Settle Liability Awards) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsNarrativeDetails" roleURI="http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails">
        <link:definition>0000086 - Disclosure - Fair Value Measurements (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DiscontinuedOperationsScheduleofDisposalGroupDetails" roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails">
        <link:definition>0000087 - Disclosure - Discontinued Operations (Schedule of Disposal Group) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails" roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails">
        <link:definition>0000088 - Disclosure - Discontinued Operations (Net Sales and Operating Loss for Held for Sale Operations) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DiscontinuedOperationsNarrativeDetails" roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails">
        <link:definition>0000089 - Disclosure - Discontinued Operations (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails" roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails">
        <link:definition>0000090 - Disclosure - Discontinued Operations (Components of Income from Discontinued Operations before Taxes, Including the Interest Allocated to Discontinued Operations) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ExitActivityCostsandAssetImpairmentsNarrativeDetails" roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails">
        <link:definition>0000091 - Disclosure - Exit Activity Costs and Asset Impairments (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails" roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails">
        <link:definition>0000092 - Disclosure - Exit Activity Costs and Asset Impairments (Schedule Of Asset Impairment Charges Related To Restructuring Activities) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails" roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails">
        <link:definition>0000093 - Disclosure - Exit Activity Costs and Asset Impairments (Summary Of Exit Activity Costs And Asset Impairments Recorded in the Consolidated Statements of Operations) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails" roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails">
        <link:definition>0000094 - Disclosure - Exit Activity Costs and Asset Impairments (Reconciles Of Liability For Exit Activity Costs Relating To Facility Consolidation Efforts) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails" roleURI="http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails">
        <link:definition>0000095 - Disclosure - Income Taxes (Components of Income (Loss) before Taxes from Continuing Operations) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesBenefitofProvisionforIncomeTaxesDetails" roleURI="http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails">
        <link:definition>0000096 - Disclosure - Income Taxes (Benefit of) Provision for Income Taxes) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails" roleURI="http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails">
        <link:definition>0000097 - Disclosure - Income Taxes (Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesDeferredTaxLiabilitiesAssetsDetails" roleURI="http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails">
        <link:definition>0000098 - Disclosure - Income Taxes (Deferred Tax Liabilities (Assets)) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesNarrativeDetails" roleURI="http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails">
        <link:definition>0000099 - Disclosure - Income Taxes (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesSummaryofValuationAllowanceDetails" roleURI="http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails">
        <link:definition>0000100 - Disclosure - Income Taxes (Summary of Valuation Allowance) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails" roleURI="http://www.gibraltar1.com/role/IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails">
        <link:definition>0000101 - Disclosure - Income Taxes (Income Taxes Paid, Net of Tax Refunds) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsperShareNarrativeDetails" roleURI="http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails">
        <link:definition>0000102 - Disclosure - Earnings per Share (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails" roleURI="http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails">
        <link:definition>0000103 - Disclosure - Earnings per Share (Schedule of Computation of Basic and Diluted Earnings per Share) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesNarrativeDetails" roleURI="http://www.gibraltar1.com/role/LeasesNarrativeDetails">
        <link:definition>0000104 - Disclosure - Leases - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesAssetsandLiabilitiesofLesseeDetails" roleURI="http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails">
        <link:definition>0000105 - Disclosure - Leases - Assets and Liabilities of Lessee (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleofLeaseCostandAssumptionsDetails" roleURI="http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails">
        <link:definition>0000106 - Disclosure - Leases - Schedule of Lease Cost and Assumptions (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesMaturityofLeasePaymentsDetails" roleURI="http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails">
        <link:definition>0000107 - Disclosure - Leases - Maturity of Lease Payments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationNarrativeDetails" roleURI="http://www.gibraltar1.com/role/SegmentInformationNarrativeDetails">
        <link:definition>0000108 - Disclosure - Segment Information (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails" roleURI="http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails">
        <link:definition>0000109 - Disclosure - Segment Information (Measurements Used by Management to Assess Performance of Segments) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationNetSalesbyContractTypeDetails" roleURI="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails">
        <link:definition>0000110 - Disclosure - Segment Information (Net Sales by Contract Type) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails" roleURI="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails">
        <link:definition>0000111 - Disclosure - Segment Information (Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" abstract="false" name="SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="rock_IncomeTaxStatueOfLimitationsExpirationPeriod" abstract="false" name="IncomeTaxStatueOfLimitationsExpirationPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="rock_SellingGeneralAndAdministrativeExpenseMember" abstract="false" name="SellingGeneralAndAdministrativeExpenseMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_AcquiredIntangibleAssetsTotal" abstract="false" name="AcquiredIntangibleAssetsTotal" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_OtherPostretirementBenefitsAbstract" abstract="true" name="OtherPostretirementBenefitsAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" abstract="false" name="EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="rock_A2022SeniorCreditAgreementMember" abstract="true" name="A2022SeniorCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" abstract="false" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_TwoThousandEighteenEquityIncentivePlanMember" abstract="true" name="TwoThousandEighteenEquityIncentivePlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_A2019SeniorCreditAgreementMember" abstract="true" name="A2019SeniorCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ScheduleOfInterestCashPaymentTableTextBlock" abstract="false" name="ScheduleOfInterestCashPaymentTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_ApplicableRatePeriod1Member" abstract="true" name="ApplicableRatePeriod1Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" abstract="false" name="OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_InventoryValuationExcessObsoleteAndSlowMovingInventory" abstract="false" name="InventoryValuationExcessObsoleteAndSlowMovingInventory" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" abstract="false" name="ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ScheduleofBusinessCombinationCostsTableTextBlock" abstract="false" name="ScheduleofBusinessCombinationCostsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_DebtInstrumentApplicableRatePeriodDomain" abstract="true" name="DebtInstrumentApplicableRatePeriodDomain" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_SecuredOvernightFinancingRateSOFRMember" abstract="true" name="SecuredOvernightFinancingRateSOFRMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_A2018PlanMember" abstract="true" name="A2018PlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_A401kPlanMember" abstract="true" name="A401kPlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_CapitalLossCarryfowardAmendedReturns" abstract="false" name="CapitalLossCarryfowardAmendedReturns" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_AccruedEquityBasedCompensation" abstract="false" name="AccruedEquityBasedCompensation" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_TerraSmartLLCMember" abstract="true" name="TerraSmartLLCMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" abstract="false" name="DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" abstract="false" name="IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ResidentialMember" abstract="false" name="ResidentialMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" abstract="false" name="ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="rock_SummaryOfSlowMovingInventoryActivityTableTextBlock" abstract="false" name="SummaryOfSlowMovingInventoryActivityTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_DeltaSeparationsLLCMember" abstract="true" name="DeltaSeparationsLLCMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" abstract="false" name="ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_NoncashInterestAdjustment" abstract="false" name="NoncashInterestAdjustment" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ApartmentTourApplicationBusinessMember" abstract="true" name="ApartmentTourApplicationBusinessMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" abstract="true" name="SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ManagementStockPurchasePlanMember" abstract="false" name="ManagementStockPurchasePlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_SharebasedCompensationMeasurementTotalShareholderReturnMember" abstract="true" name="SharebasedCompensationMeasurementTotalShareholderReturnMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_A2017Member" abstract="true" name="A2017Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_BillingsinExcessofCostMember" abstract="true" name="BillingsinExcessofCostMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_BacklogMember" abstract="true" name="BacklogMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" abstract="false" name="StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_DebtInstrumentNumberOfDebtCovenants" abstract="false" name="DebtInstrumentNumberOfDebtCovenants" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="rock_AccruedSharebasedCompensationCurrent" abstract="false" name="AccruedSharebasedCompensationCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_AccumulatedOtherComprehensiveIncomeLossTax" abstract="false" name="AccumulatedOtherComprehensiveIncomeLossTax" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed" abstract="false" name="RestructuringandRelatedCostNumberofFacilitiestobeClosed" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="rock_PaymentsToAcquirePropertyPlantAndEquipmentNet" abstract="false" name="PaymentsToAcquirePropertyPlantAndEquipmentNet" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_DebtInstrumentApplicableRatePeriodAxis" abstract="true" name="DebtInstrumentApplicableRatePeriodAxis" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:dimensionItem" type="xbrli:stringItemType"/>
  <xs:element id="rock_AssetsAndLiabilitiesLesseeTableTextBlock" abstract="false" name="AssetsAndLiabilitiesLesseeTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" abstract="false" name="DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="rock_A2019Member" abstract="true" name="A2019Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_A2018Member" abstract="true" name="A2018Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ApplicableRatePeriod2Member" abstract="true" name="ApplicableRatePeriod2Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_MarketPriceOfCommonStockPerShare" abstract="false" name="MarketPriceOfCommonStockPerShare" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="rock_CashPaidToSettleLiabilityAwardsTableTextBlock" abstract="false" name="CashPaidToSettleLiabilityAwardsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_SunfigCorporationMember" abstract="true" name="SunfigCorporationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ExercisePriceRangeOneMember" abstract="false" name="ExercisePriceRangeOneMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" abstract="false" name="ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ManagementStockPurchasePlanCompensationExpense" abstract="false" name="ManagementStockPurchasePlanCompensationExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" abstract="false" name="DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" abstract="false" name="ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ContractWithCustomerContractPaymentTerms" abstract="false" name="ContractWithCustomerContractPaymentTerms" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="rock_StockCompensationExpenseRecognizedUnderTerminatedPlans" abstract="false" name="StockCompensationExpenseRecognizedUnderTerminatedPlans" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan" abstract="false" name="StockCompensationExpenseRecognizedUnderEquityIncentivePlan" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_RenewablesMember" abstract="true" name="RenewablesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_InventoryRollForward" abstract="true" name="InventoryRollForward" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="rock_AuditInformationAbstract" abstract="true" name="AuditInformationAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="rock_ProcessingBusinessMember" abstract="true" name="ProcessingBusinessMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_TwoThousandFifteenEquityIncentivePlanMember" abstract="true" name="TwoThousandFifteenEquityIncentivePlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_PerformanceSharesMarketConditionMember" abstract="true" name="PerformanceSharesMarketConditionMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" abstract="false" name="ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_ArchitecturalMailboxesLLCMember" abstract="true" name="ArchitecturalMailboxesLLCMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" abstract="false" name="SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="rock_CapitalLossCarryfoward" abstract="false" name="CapitalLossCarryfoward" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" abstract="true" name="SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="rock_RenewablesAndAgtechMember" abstract="true" name="RenewablesAndAgtechMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_ThermoEnergySystemsMember" abstract="true" name="ThermoEnergySystemsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_IndustrialBusinessSegmentMember" abstract="true" name="IndustrialBusinessSegmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_QualityAluminumProductsMember" abstract="true" name="QualityAluminumProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_NetPeriodicPostRetirementCostTable" abstract="true" name="NetPeriodicPostRetirementCostTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="rock_DeferredStockUnitsMember" abstract="true" name="DeferredStockUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationValuationAllowance" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_InventoryValuationScrappedInventoryAndOtherAdjustments" abstract="false" name="InventoryValuationScrappedInventoryAndOtherAdjustments" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_InfrastructureMember" abstract="false" name="InfrastructureMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_DeferredTaxAssetsCapitalLossCarryfowards" abstract="false" name="DeferredTaxAssetsCapitalLossCarryfowards" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_AgtechMember" abstract="true" name="AgtechMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_RetirementPlanNumberOfPlans" abstract="false" name="RetirementPlanNumberOfPlans" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="rock_ContractsReceivableGrossCurrent" abstract="false" name="ContractsReceivableGrossCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_AccruedExpensesCurrentMember" abstract="true" name="AccruedExpensesCurrentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" abstract="false" name="DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="rock_NonCurrentLiabilitiesMember" abstract="true" name="NonCurrentLiabilitiesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_PerformanceStockUnitsMember" abstract="false" name="PerformanceStockUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_NonEmployeeDirectorsPlanMember" abstract="true" name="NonEmployeeDirectorsPlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_A2015PlanMember" abstract="true" name="A2015PlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_SeniorCreditAgreementMember" abstract="false" name="SeniorCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_IndefiniteLivedAccumulatedAmortization" abstract="false" name="IndefiniteLivedAccumulatedAmortization" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" abstract="false" name="StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="rock_HomeImprovementRetailCompanyMember" abstract="true" name="HomeImprovementRetailCompanyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" abstract="false" name="SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="rock_SharebasedCompensationMeasurementGrossProfitThresholdMember" abstract="true" name="SharebasedCompensationMeasurementGrossProfitThresholdMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization" abstract="false" name="TotalAcquiredIntangibleAssetsAccumulatedAmortization" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="rock_AccruedCustomerRebatesCurrent" abstract="false" name="AccruedCustomerRebatesCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>10
<FILENAME>rock-20221231_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:494ce7ad-dd21-4422-be07-151863b91ba7,g:883578fa-a7f5-4214-bb5b-e80105339f54-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofOperations"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_31a91646-a971-4b5d-946d-a6c362eb10e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_8aebb2f6-045a-4a81-b7ec-22193d4c43fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_31a91646-a971-4b5d-946d-a6c362eb10e6" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_8aebb2f6-045a-4a81-b7ec-22193d4c43fb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_77f19a3b-2c06-4744-a193-dd763a782843" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_31a91646-a971-4b5d-946d-a6c362eb10e6" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_77f19a3b-2c06-4744-a193-dd763a782843" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_78438c32-4533-4cc0-9fd1-aaace0b45e57" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_d8644eae-4dee-41e9-8080-719b2e9e82b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareDiluted_78438c32-4533-4cc0-9fd1-aaace0b45e57" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_d8644eae-4dee-41e9-8080-719b2e9e82b8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_5227ce0c-1c46-40ee-b33d-73e81a7bc453" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareDiluted_78438c32-4533-4cc0-9fd1-aaace0b45e57" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_5227ce0c-1c46-40ee-b33d-73e81a7bc453" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_218891ac-3ca1-48ee-99af-8b0d3ba6797a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_6d3ddbc8-ce32-43f5-a203-46bed97cfdad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_218891ac-3ca1-48ee-99af-8b0d3ba6797a" xlink:to="loc_us-gaap_GrossProfit_6d3ddbc8-ce32-43f5-a203-46bed97cfdad" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_8597537c-78d0-4feb-8526-5863c31b66f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_218891ac-3ca1-48ee-99af-8b0d3ba6797a" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_8597537c-78d0-4feb-8526-5863c31b66f6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_cf024e4c-6c77-46b6-8781-66e6ab3bfdbb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_218891ac-3ca1-48ee-99af-8b0d3ba6797a" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_cf024e4c-6c77-46b6-8781-66e6ab3bfdbb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_a9e9a71d-94e4-485c-8871-4ff6be98bb4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_acded3ae-d5bc-45ac-9a98-3849ddcc0b97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperations_a9e9a71d-94e4-485c-8871-4ff6be98bb4a" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_acded3ae-d5bc-45ac-9a98-3849ddcc0b97" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_d1c16e73-dfc6-4616-a1a3-9463a9941ed4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperations_a9e9a71d-94e4-485c-8871-4ff6be98bb4a" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_d1c16e73-dfc6-4616-a1a3-9463a9941ed4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_279817da-c7af-4d95-abd3-ab1798e37b60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_4faaa1dd-777a-44f3-9d46-467bffcb4c72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_279817da-c7af-4d95-abd3-ab1798e37b60" xlink:to="loc_us-gaap_Revenues_4faaa1dd-777a-44f3-9d46-467bffcb4c72" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenue_8869a1a8-4577-4157-8724-1553cd04f320" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_279817da-c7af-4d95-abd3-ab1798e37b60" xlink:to="loc_us-gaap_CostOfRevenue_8869a1a8-4577-4157-8724-1553cd04f320" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cd6685da-33e4-4693-b1e1-58bf9c75a842" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_17ef9132-118b-43ef-a785-63206f7ba369" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cd6685da-33e4-4693-b1e1-58bf9c75a842" xlink:to="loc_us-gaap_OperatingIncomeLoss_17ef9132-118b-43ef-a785-63206f7ba369" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNet_86ea9777-f61f-4342-a382-77a252872e17" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeExpenseNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cd6685da-33e4-4693-b1e1-58bf9c75a842" xlink:to="loc_us-gaap_InterestIncomeExpenseNet_86ea9777-f61f-4342-a382-77a252872e17" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncome_4f019338-bd87-43df-9f88-0716c79d8325" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncome"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cd6685da-33e4-4693-b1e1-58bf9c75a842" xlink:to="loc_us-gaap_OtherIncome_4f019338-bd87-43df-9f88-0716c79d8325" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_d2564a00-001c-49ba-8485-0b36c670cf50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_983ab648-cc06-421a-81a3-19d4d61fdb53" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_d2564a00-001c-49ba-8485-0b36c670cf50" xlink:to="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_983ab648-cc06-421a-81a3-19d4d61fdb53" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_3c733802-c3bc-447f-b4ab-5f1f2307fa5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_d2564a00-001c-49ba-8485-0b36c670cf50" xlink:to="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_3c733802-c3bc-447f-b4ab-5f1f2307fa5c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_a82e4585-3342-4d0d-9750-f82dced95be0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_c7022245-3189-4eac-ab1c-fd27748a4017" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareBasic_a82e4585-3342-4d0d-9750-f82dced95be0" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_c7022245-3189-4eac-ab1c-fd27748a4017" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_23aa41b8-f3cc-4f04-84ec-ca1527286a9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareBasic_a82e4585-3342-4d0d-9750-f82dced95be0" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_23aa41b8-f3cc-4f04-84ec-ca1527286a9e" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_da66e273-1649-4ae9-b234-ae9ded560e8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_3dfde4fd-122b-4664-a6eb-3ccced3b286c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_da66e273-1649-4ae9-b234-ae9ded560e8f" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_3dfde4fd-122b-4664-a6eb-3ccced3b286c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_a6860a35-8f62-4b14-8629-b16ccf41f5b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_da66e273-1649-4ae9-b234-ae9ded560e8f" xlink:to="loc_us-gaap_NetIncomeLoss_a6860a35-8f62-4b14-8629-b16ccf41f5b9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_3b27d15e-5d58-4136-a0a4-0c016c02be4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_a7fa3031-fa3c-405a-bc46-ec44df737550" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_3b27d15e-5d58-4136-a0a4-0c016c02be4f" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_a7fa3031-fa3c-405a-bc46-ec44df737550" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_668ef907-30c7-4d42-9ae2-b97c85a2edc2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_3b27d15e-5d58-4136-a0a4-0c016c02be4f" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_668ef907-30c7-4d42-9ae2-b97c85a2edc2" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_df4c433f-b6d1-4097-b3a1-e962ebf49c69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_f86ce808-1922-4d8b-b39f-5820205037f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_df4c433f-b6d1-4097-b3a1-e962ebf49c69" xlink:to="loc_us-gaap_AssetsCurrent_f86ce808-1922-4d8b-b39f-5820205037f5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_88ea6222-651f-4045-82c9-dc218438ebfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_df4c433f-b6d1-4097-b3a1-e962ebf49c69" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_88ea6222-651f-4045-82c9-dc218438ebfa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_0bee3d10-b9c4-49dd-9182-4c301089966d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_df4c433f-b6d1-4097-b3a1-e962ebf49c69" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_0bee3d10-b9c4-49dd-9182-4c301089966d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_aecdf371-3b43-4f42-b543-029c3553e991" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_df4c433f-b6d1-4097-b3a1-e962ebf49c69" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_aecdf371-3b43-4f42-b543-029c3553e991" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_986ef33b-292b-4cc5-b5bb-787f423a67cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_df4c433f-b6d1-4097-b3a1-e962ebf49c69" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_986ef33b-292b-4cc5-b5bb-787f423a67cf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_678a6c40-6f5a-4239-a57c-44ca1fb24138" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_df4c433f-b6d1-4097-b3a1-e962ebf49c69" xlink:to="loc_us-gaap_Goodwill_678a6c40-6f5a-4239-a57c-44ca1fb24138" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_a98fb606-a551-4494-8f85-3df65448b140" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_9d4922b0-8aea-4371-ac6e-2b13153d5aa3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a98fb606-a551-4494-8f85-3df65448b140" xlink:to="loc_us-gaap_PreferredStockValue_9d4922b0-8aea-4371-ac6e-2b13153d5aa3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_f9feae4b-d0d5-4df3-8a95-1208cc03e21d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a98fb606-a551-4494-8f85-3df65448b140" xlink:to="loc_us-gaap_CommonStockValue_f9feae4b-d0d5-4df3-8a95-1208cc03e21d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital_cae3dd43-a754-4df5-b228-1bdb3a62b3f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a98fb606-a551-4494-8f85-3df65448b140" xlink:to="loc_us-gaap_AdditionalPaidInCapital_cae3dd43-a754-4df5-b228-1bdb3a62b3f6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_94e42e5b-477e-4381-87b3-e5e75a83468d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a98fb606-a551-4494-8f85-3df65448b140" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_94e42e5b-477e-4381-87b3-e5e75a83468d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_b963d752-288a-4314-ac30-2a6c0aaf5cbd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a98fb606-a551-4494-8f85-3df65448b140" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_b963d752-288a-4314-ac30-2a6c0aaf5cbd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_5b35cc9d-54ce-4bc4-82ec-7460ffd615c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a98fb606-a551-4494-8f85-3df65448b140" xlink:to="loc_us-gaap_TreasuryStockValue_5b35cc9d-54ce-4bc4-82ec-7460ffd615c6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_9d2ba4f4-d11c-4816-ae4e-47c5002beb9d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_f1654291-88c7-4837-94d0-654c24f975b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_9d2ba4f4-d11c-4816-ae4e-47c5002beb9d" xlink:to="loc_us-gaap_AccountsPayableCurrent_f1654291-88c7-4837-94d0-654c24f975b0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_6503c037-e8c8-42fe-8bc3-9972af9d9209" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_9d2ba4f4-d11c-4816-ae4e-47c5002beb9d" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_6503c037-e8c8-42fe-8bc3-9972af9d9209" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_df9fdc62-4fb3-46dd-8616-83e1ff55cfdd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_9d2ba4f4-d11c-4816-ae4e-47c5002beb9d" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_df9fdc62-4fb3-46dd-8616-83e1ff55cfdd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_b6fd9729-6850-428b-a5a2-8dd80f065cad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_17b0bf01-97f1-4f08-abc6-8000a939d2ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_b6fd9729-6850-428b-a5a2-8dd80f065cad" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_17b0bf01-97f1-4f08-abc6-8000a939d2ef" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0da6050e-c4bf-4f9f-b8d0-cb9dc865c151" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_b6fd9729-6850-428b-a5a2-8dd80f065cad" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0da6050e-c4bf-4f9f-b8d0-cb9dc865c151" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsCurrent_9dd23293-49e2-441a-b985-6ce402f73437" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_b6fd9729-6850-428b-a5a2-8dd80f065cad" xlink:to="loc_us-gaap_OtherAssetsCurrent_9dd23293-49e2-441a-b985-6ce402f73437" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_cff97115-463f-4792-b79b-3466cba36c66" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_b6fd9729-6850-428b-a5a2-8dd80f065cad" xlink:to="loc_us-gaap_InventoryNet_cff97115-463f-4792-b79b-3466cba36c66" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_bcea32ae-61e8-46c2-a0ca-7eb620499fe3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_6a50cad4-c399-4189-801b-a3a2d2277ada" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bcea32ae-61e8-46c2-a0ca-7eb620499fe3" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_6a50cad4-c399-4189-801b-a3a2d2277ada" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_e3bbec98-dc91-46a0-958e-286eeddde747" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bcea32ae-61e8-46c2-a0ca-7eb620499fe3" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_e3bbec98-dc91-46a0-958e-286eeddde747" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_cefc3f7e-17c4-4b13-bcc1-7239c82c6ae5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bcea32ae-61e8-46c2-a0ca-7eb620499fe3" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_cefc3f7e-17c4-4b13-bcc1-7239c82c6ae5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_2a44f9eb-cd67-422c-ba14-a5efb11817f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bcea32ae-61e8-46c2-a0ca-7eb620499fe3" xlink:to="loc_us-gaap_LiabilitiesCurrent_2a44f9eb-cd67-422c-ba14-a5efb11817f2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_03f17880-63bc-4104-bc4a-26adfcfbfc99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bcea32ae-61e8-46c2-a0ca-7eb620499fe3" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_03f17880-63bc-4104-bc4a-26adfcfbfc99" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_304a8918-5362-4b48-82ed-f096b0bffa96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bcea32ae-61e8-46c2-a0ca-7eb620499fe3" xlink:to="loc_us-gaap_StockholdersEquity_304a8918-5362-4b48-82ed-f096b0bffa96" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_0a1ca696-33eb-404b-9459-b3fb9da6ecfc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_fe43e4b6-baf2-43fa-824d-09c6918d278b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_0a1ca696-33eb-404b-9459-b3fb9da6ecfc" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_fe43e4b6-baf2-43fa-824d-09c6918d278b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_f365e46e-dc9a-4ea5-bb9a-3c58e91fe2d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_0a1ca696-33eb-404b-9459-b3fb9da6ecfc" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_f365e46e-dc9a-4ea5-bb9a-3c58e91fe2d9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet_6b68a0a7-6c85-47a3-b6e6-1d1eec75d150" xlink:href="rock-20221231.xsd#rock_PaymentsToAcquirePropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_0a1ca696-33eb-404b-9459-b3fb9da6ecfc" xlink:to="loc_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet_6b68a0a7-6c85-47a3-b6e6-1d1eec75d150" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b020aa12-d605-44a5-9f79-64231ddd7d63" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_4ca8b98a-b2ab-4fe7-ab1d-e8f62803f8d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b020aa12-d605-44a5-9f79-64231ddd7d63" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_4ca8b98a-b2ab-4fe7-ab1d-e8f62803f8d1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_3c9e8e74-e07f-48f5-b206-c7d7bd23b4dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b020aa12-d605-44a5-9f79-64231ddd7d63" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_3c9e8e74-e07f-48f5-b206-c7d7bd23b4dc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_b64adda2-0df4-47d0-a043-abce61980415" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b020aa12-d605-44a5-9f79-64231ddd7d63" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_b64adda2-0df4-47d0-a043-abce61980415" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts_0bc57648-913b-4746-b38c-e9f8e183ddc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b020aa12-d605-44a5-9f79-64231ddd7d63" xlink:to="loc_us-gaap_PaymentsOfFinancingCosts_0bc57648-913b-4746-b38c-e9f8e183ddc5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_649350f0-955b-43ff-a56e-b19e94fd58a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b020aa12-d605-44a5-9f79-64231ddd7d63" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_649350f0-955b-43ff-a56e-b19e94fd58a8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_73a72d65-d012-477e-bdb3-7f06efaa7e12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_54cd2347-584a-477b-a669-02993218bea4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_73a72d65-d012-477e-bdb3-7f06efaa7e12" xlink:to="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_54cd2347-584a-477b-a669-02993218bea4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_2ab08514-fc7b-419f-97ec-0268ff865a6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_73a72d65-d012-477e-bdb3-7f06efaa7e12" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_2ab08514-fc7b-419f-97ec-0268ff865a6e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_e9328fe5-75d6-43e7-8a86-84fee0008133" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_e9328fe5-75d6-43e7-8a86-84fee0008133" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_66117f10-a49f-4daa-a99f-3b1dfd7e1d25" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_66117f10-a49f-4daa-a99f-3b1dfd7e1d25" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_149e7fec-959e-4dd9-a38a-d623632ed727" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_149e7fec-959e-4dd9-a38a-d623632ed727" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_eeb69a30-ed2e-4763-a238-00d9915894a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_eeb69a30-ed2e-4763-a238-00d9915894a6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_bfdaa5b7-7a39-47e0-82f9-c3e3fa596353" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_bfdaa5b7-7a39-47e0-82f9-c3e3fa596353" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_04a8eb5a-8cb2-4c6d-b774-11d1e9c85fb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_04a8eb5a-8cb2-4c6d-b774-11d1e9c85fb8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_a13c7083-1496-4561-ad6f-0f3d541d8e17" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_a13c7083-1496-4561-ad6f-0f3d541d8e17" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_d8236eb4-b997-432d-9da5-331c26336678" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_d8236eb4-b997-432d-9da5-331c26336678" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_5adfc568-e1f7-4f5e-82e6-80ae0c6baf31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_5adfc568-e1f7-4f5e-82e6-80ae0c6baf31" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_c29c15ff-884c-44a9-a4c7-97408fb534ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_c29c15ff-884c-44a9-a4c7-97408fb534ad" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_ea9d33c2-5a62-4831-a657-42f26d25562b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_ea9d33c2-5a62-4831-a657-42f26d25562b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_36068a05-02ca-42d8-ae8c-b8fb51970fe7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_ShareBasedCompensation_36068a05-02ca-42d8-ae8c-b8fb51970fe7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_4ee4da27-81d9-4ec3-923a-0c10dd36dd30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:calculationArc order="13" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_20b33ce0-aaf4-443e-83d6-63248e4735b6" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_4ee4da27-81d9-4ec3-923a-0c10dd36dd30" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_6a823eb6-19d0-4f10-82a5-181d95dca450" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_c7a96df4-eea1-4c5c-834c-9c9142da3ba1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_6a823eb6-19d0-4f10-82a5-181d95dca450" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_c7a96df4-eea1-4c5c-834c-9c9142da3ba1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_8f2fc0a5-4293-4db2-9de6-e3a532bc34df" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_6a823eb6-19d0-4f10-82a5-181d95dca450" xlink:to="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_8f2fc0a5-4293-4db2-9de6-e3a532bc34df" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_edee4e15-8481-4a83-908d-e07e67e4fb96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_1baa44c5-cfb2-40d9-8d94-4803339627fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_edee4e15-8481-4a83-908d-e07e67e4fb96" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_1baa44c5-cfb2-40d9-8d94-4803339627fa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_b68ba926-93e1-47f4-ba83-87a2464f5e55" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_edee4e15-8481-4a83-908d-e07e67e4fb96" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_b68ba926-93e1-47f4-ba83-87a2464f5e55" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_8d0ede76-9b6d-4d76-8310-8eee6b5953ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_edee4e15-8481-4a83-908d-e07e67e4fb96" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_8d0ede76-9b6d-4d76-8310-8eee6b5953ae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_e4013def-0899-42e8-bbbe-5be78a4ae49d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_edee4e15-8481-4a83-908d-e07e67e4fb96" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_e4013def-0899-42e8-bbbe-5be78a4ae49d" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccountsReceivableDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AccountsReceivableDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/AccountsReceivableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_e217bce2-cd8f-42a7-9eee-3cb90735512a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractsReceivableGrossCurrent_dc073871-5b7a-47a1-9ff4-745e6d219204" xlink:href="rock-20221231.xsd#rock_ContractsReceivableGrossCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_e217bce2-cd8f-42a7-9eee-3cb90735512a" xlink:to="loc_rock_ContractsReceivableGrossCurrent_dc073871-5b7a-47a1-9ff4-745e6d219204" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_9e74fb8d-30f6-461c-8698-f2630c4370d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_e217bce2-cd8f-42a7-9eee-3cb90735512a" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_9e74fb8d-30f6-461c-8698-f2630c4370d1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractsReceivableGrossCurrent_e2ca7b11-abdb-43fc-ac54-eb6c4d94f25c" xlink:href="rock-20221231.xsd#rock_ContractsReceivableGrossCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableGrossCurrent_ae58d8a5-15d8-4aa8-b584-d09a98f3cf0c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableGrossCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_rock_ContractsReceivableGrossCurrent_e2ca7b11-abdb-43fc-ac54-eb6c4d94f25c" xlink:to="loc_us-gaap_AccountsReceivableGrossCurrent_ae58d8a5-15d8-4aa8-b584-d09a98f3cf0c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledContractsReceivable_f9b89064-ffc7-4222-a126-0b0856a6be5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnbilledContractsReceivable"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_rock_ContractsReceivableGrossCurrent_e2ca7b11-abdb-43fc-ac54-eb6c4d94f25c" xlink:to="loc_us-gaap_UnbilledContractsReceivable_f9b89064-ffc7-4222-a126-0b0856a6be5c" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#InventoriesScheduleofInventoriesDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryGross_be8c963a-181e-4483-bfd9-04a104645f5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials_2c8a32a7-6f2d-4e1a-9072-730ab1632023" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryGross_be8c963a-181e-4483-bfd9-04a104645f5c" xlink:to="loc_us-gaap_InventoryRawMaterials_2c8a32a7-6f2d-4e1a-9072-730ab1632023" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_cb750324-d21c-4b0d-a9dd-c5982bab990d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryGross_be8c963a-181e-4483-bfd9-04a104645f5c" xlink:to="loc_us-gaap_InventoryFinishedGoods_cb750324-d21c-4b0d-a9dd-c5982bab990d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcess_f10d15ed-22be-42f7-8cbc-c26b5c5c8ff7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcess"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryGross_be8c963a-181e-4483-bfd9-04a104645f5c" xlink:to="loc_us-gaap_InventoryWorkInProcess_f10d15ed-22be-42f7-8cbc-c26b5c5c8ff7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_284e5d2a-55d7-4427-83d7-2958978fd178" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryGross_4e578df2-578e-4f0b-a11b-6a1cd3a9861e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_284e5d2a-55d7-4427-83d7-2958978fd178" xlink:to="loc_us-gaap_InventoryGross_4e578df2-578e-4f0b-a11b-6a1cd3a9861e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryAdjustments_562e9352-bed6-4097-9252-d2c6708728a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryAdjustments"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_284e5d2a-55d7-4427-83d7-2958978fd178" xlink:to="loc_us-gaap_InventoryAdjustments_562e9352-bed6-4097-9252-d2c6708728a8" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PropertyPlantandEquipmentDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_7c1a4e96-99a3-451c-8463-72193c69f5f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_a51b29b0-27d4-4075-80c4-e172f5b0d443" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_7c1a4e96-99a3-451c-8463-72193c69f5f1" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_a51b29b0-27d4-4075-80c4-e172f5b0d443" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_d78560f9-c0bc-4954-92e8-293ced71f219" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_7c1a4e96-99a3-451c-8463-72193c69f5f1" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_d78560f9-c0bc-4954-92e8-293ced71f219" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_5096f143-6b1f-4294-877c-8257ba592d3d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_9507630b-ed61-497e-9cd8-046c5a34139c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_5096f143-6b1f-4294-877c-8257ba592d3d" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_9507630b-ed61-497e-9cd8-046c5a34139c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross_166ccc8b-ec46-4511-9838-6b4eab8dc074" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_5096f143-6b1f-4294-877c-8257ba592d3d" xlink:to="loc_us-gaap_ConstructionInProgressGross_166ccc8b-ec46-4511-9838-6b4eab8dc074" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_2cf6ad3b-26d6-4f39-bf97-5a7dfd2f1009" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_5096f143-6b1f-4294-877c-8257ba592d3d" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_2cf6ad3b-26d6-4f39-bf97-5a7dfd2f1009" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandAndLandImprovements_3221004f-e8fd-49c5-acc5-fb84a5413487" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandAndLandImprovements"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_5096f143-6b1f-4294-877c-8257ba592d3d" xlink:to="loc_us-gaap_LandAndLandImprovements_3221004f-e8fd-49c5-acc5-fb84a5413487" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2ce91cc8-9cf4-4607-9f5e-ca8355db29ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2ce91cc8-9cf4-4607-9f5e-ca8355db29ae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_9b2ced4f-fcd3-492f-a74b-5f6b573489d1" xlink:href="rock-20221231.xsd#rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_9b2ced4f-fcd3-492f-a74b-5f6b573489d1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_5ff7e1a7-ab0f-41c0-8fed-4cac940e6490" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_5ff7e1a7-ab0f-41c0-8fed-4cac940e6490" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_21321aee-b734-48a3-ab63-30561c0e64ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_21321aee-b734-48a3-ab63-30561c0e64ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_c3deb02a-5e02-45e9-94a1-bdcace8051a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_c3deb02a-5e02-45e9-94a1-bdcace8051a9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_2fdced0a-eeb2-4068-bc86-157d94cb7652" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_2fdced0a-eeb2-4068-bc86-157d94cb7652" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_0c74617e-badd-4e45-9b3e-3e7d6b731bd9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_us-gaap_Goodwill_0c74617e-badd-4e45-9b3e-3e7d6b731bd9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_7ad641ca-78a3-4091-b822-543a89354bdb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_880c1779-3a75-4337-b435-35d692b3e7c9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_7ad641ca-78a3-4091-b822-543a89354bdb" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccruedExpensesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AccruedExpensesDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/AccruedExpensesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_494b77f6-7894-42bb-bbbc-d426218f9600" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_494b77f6-7894-42bb-bbbc-d426218f9600" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_d8afcd69-3b1e-4984-b728-3fc4af649ac6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_d8afcd69-3b1e-4984-b728-3fc4af649ac6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedCustomerRebatesCurrent_ddabc746-6d62-4563-ae62-6956184feff5" xlink:href="rock-20221231.xsd#rock_AccruedCustomerRebatesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_rock_AccruedCustomerRebatesCurrent_ddabc746-6d62-4563-ae62-6956184feff5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrent_fde0fd83-480b-451a-bc4b-b7d0130e383a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_us-gaap_AccruedInsuranceCurrent_fde0fd83-480b-451a-bc4b-b7d0130e383a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_a50eccc8-eeed-4e27-8aa6-73320207185c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_us-gaap_ContractWithCustomerLiability_a50eccc8-eeed-4e27-8aa6-73320207185c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_6e047389-a0e0-40d6-9bb0-acb79d9d3ea3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_6e047389-a0e0-40d6-9bb0-acb79d9d3ea3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_e2eed582-8c20-474c-8744-a1484f9f1bd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_e2eed582-8c20-474c-8744-a1484f9f1bd0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedSharebasedCompensationCurrent_f6e4b02e-a0c1-4d8c-8ef1-be5ed551c1f3" xlink:href="rock-20221231.xsd#rock_AccruedSharebasedCompensationCurrent"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_rock_AccruedSharebasedCompensationCurrent_f6e4b02e-a0c1-4d8c-8ef1-be5ed551c1f3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_6e6b83a2-142f-4783-8a21-e3bb236a2010" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_966ece27-6ac2-4a2d-bce3-b7777cd5d6e0" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_6e6b83a2-142f-4783-8a21-e3bb236a2010" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DebtScheduleofLongtermDebtDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_58faad6c-effa-4889-a052-834d97c336e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_b566adc4-c064-4efb-a4ed-ff5e01cf705a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt_58faad6c-effa-4889-a052-834d97c336e7" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_b566adc4-c064-4efb-a4ed-ff5e01cf705a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_780b118a-a181-4ef9-992d-f9798c4c9b83" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt_58faad6c-effa-4889-a052-834d97c336e7" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_780b118a-a181-4ef9-992d-f9798c4c9b83" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_cc51de47-1d31-4b4a-bd3b-f0f61a15c146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_b234bb48-6c0d-47fb-85cf-a368de1eb359" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_cc51de47-1d31-4b4a-bd3b-f0f61a15c146" xlink:to="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_b234bb48-6c0d-47fb-85cf-a368de1eb359" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_d896ae29-4973-4392-a0d3-ec8c9711f4c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_cc51de47-1d31-4b4a-bd3b-f0f61a15c146" xlink:to="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_d896ae29-4973-4392-a0d3-ec8c9711f4c3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_92fce02c-0b4d-4d1a-9eaf-46ceb267431d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_cc51de47-1d31-4b4a-bd3b-f0f61a15c146" xlink:to="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_92fce02c-0b4d-4d1a-9eaf-46ceb267431d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_ef6c8243-2399-442d-bbf0-142c37a216e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_57b391f5-8507-46e1-b1a9-dac003575fc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_ef6c8243-2399-442d-bbf0-142c37a216e0" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_57b391f5-8507-46e1-b1a9-dac003575fc7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_6dc0119f-4a9b-4660-b62a-3f452096bf8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_ef6c8243-2399-442d-bbf0-142c37a216e0" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_6dc0119f-4a9b-4660-b62a-3f452096bf8e" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_e0f34b9e-273a-4898-b6a8-26e82a54dbcc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_ea7dc118-b269-4155-a7e6-63f1ef8dc75a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_e0f34b9e-273a-4898-b6a8-26e82a54dbcc" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_ea7dc118-b269-4155-a7e6-63f1ef8dc75a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_f2f41bee-3c7e-45ec-a86b-e8ca04313892" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_e0f34b9e-273a-4898-b6a8-26e82a54dbcc" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_f2f41bee-3c7e-45ec-a86b-e8ca04313892" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_79e4af1e-b44c-44e1-9391-b66384b8ff40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_e0f34b9e-273a-4898-b6a8-26e82a54dbcc" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_79e4af1e-b44c-44e1-9391-b66384b8ff40" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_2323f139-d89e-4b27-9ff9-062716ec75b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_e0f34b9e-273a-4898-b6a8-26e82a54dbcc" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_2323f139-d89e-4b27-9ff9-062716ec75b6" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_f29fe978-f3f8-43de-94aa-dceb77e33437" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_bc8ed203-5f09-4a19-bbad-077126d4db1b" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderTerminatedPlans"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensation_f29fe978-f3f8-43de-94aa-dceb77e33437" xlink:to="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_bc8ed203-5f09-4a19-bbad-077126d4db1b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_4f172027-4afa-4c08-9ca7-c04519769e8b" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensation_f29fe978-f3f8-43de-94aa-dceb77e33437" xlink:to="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_4f172027-4afa-4c08-9ca7-c04519769e8b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_e230c33f-be92-4c00-850e-7f6247704534" xlink:href="rock-20221231.xsd#rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensation_f29fe978-f3f8-43de-94aa-dceb77e33437" xlink:to="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_e230c33f-be92-4c00-850e-7f6247704534" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsScheduleofDisposalGroupDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_a90cc86f-7f31-4336-a417-4f9384b0e88b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_a90cc86f-7f31-4336-a417-4f9384b0e88b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_9e256ba7-560b-41e4-910b-d87416bf9cb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_9e256ba7-560b-41e4-910b-d87416bf9cb5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_2ad12b3c-9ff3-46c1-aeec-0dbf0757ab8b" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_2ad12b3c-9ff3-46c1-aeec-0dbf0757ab8b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_d1c13db2-4dce-47a0-a3ec-6f6961260e77" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_d1c13db2-4dce-47a0-a3ec-6f6961260e77" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_0e9c2203-93ac-4646-ad70-b0a22f1669c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_0e9c2203-93ac-4646-ad70-b0a22f1669c2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_aacaa19c-263d-47b8-b246-1cad0ee2acb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_aacaa19c-263d-47b8-b246-1cad0ee2acb4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_336b17d4-14a3-4e88-b47e-2bc2fe65527b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_3f202459-8b69-47f1-abba-792bc8689987" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_336b17d4-14a3-4e88-b47e-2bc2fe65527b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_99c5ac12-c2cc-4998-835c-bc341a55c119" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_25f9a1fc-3027-4a0a-9041-c537e22a5109" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_99c5ac12-c2cc-4998-835c-bc341a55c119" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_25f9a1fc-3027-4a0a-9041-c537e22a5109" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_6a4ca219-21ba-41f4-840c-923afec5c3d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_99c5ac12-c2cc-4998-835c-bc341a55c119" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_6a4ca219-21ba-41f4-840c-923afec5c3d6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_8b49f1bc-1ac3-426b-8d4d-c1bc85fd42bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_99c5ac12-c2cc-4998-835c-bc341a55c119" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_8b49f1bc-1ac3-426b-8d4d-c1bc85fd42bd" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bd702cc-7fdc-4b91-879f-115491d0725f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_f6db00fc-1963-4046-a9e1-b140e0f85592" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bd702cc-7fdc-4b91-879f-115491d0725f" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_f6db00fc-1963-4046-a9e1-b140e0f85592" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_29861670-ab44-4bbb-b72f-6760b844bd4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bd702cc-7fdc-4b91-879f-115491d0725f" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_29861670-ab44-4bbb-b72f-6760b844bd4a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_1bd8e0b6-8481-4f08-93d8-aa9b3081adb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bd702cc-7fdc-4b91-879f-115491d0725f" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_1bd8e0b6-8481-4f08-93d8-aa9b3081adb8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_ff25f4ac-6382-41de-bad6-27b1f7201fb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bd702cc-7fdc-4b91-879f-115491d0725f" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_ff25f4ac-6382-41de-bad6-27b1f7201fb6" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_e98cb70e-93b7-49ce-865c-835a7b079dbd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_cbe7301b-d755-4368-b9b8-cedd0142fbe6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_e98cb70e-93b7-49ce-865c-835a7b079dbd" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_cbe7301b-d755-4368-b9b8-cedd0142fbe6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_40cfba17-61c1-4d19-b0ad-d2105e9e9fe0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_e98cb70e-93b7-49ce-865c-835a7b079dbd" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_40cfba17-61c1-4d19-b0ad-d2105e9e9fe0" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_1e9f6e00-51fb-407f-9234-49497e9c3531" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_0b9e6702-ee68-4e4f-b584-54dcc4a8bf44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_1e9f6e00-51fb-407f-9234-49497e9c3531" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_0b9e6702-ee68-4e4f-b584-54dcc4a8bf44" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_5e2d4d4d-ea58-4b2d-9952-bb9bbce2222c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_1e9f6e00-51fb-407f-9234-49497e9c3531" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_5e2d4d4d-ea58-4b2d-9952-bb9bbce2222c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_7419a868-7416-4621-82fb-b73b6ebd347a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_5883082a-09d1-4e19-bc19-546057a465f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_7419a868-7416-4621-82fb-b73b6ebd347a" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_5883082a-09d1-4e19-bc19-546057a465f4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_764415d0-a521-4c72-ad41-ac70418d4ea0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_7419a868-7416-4621-82fb-b73b6ebd347a" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_764415d0-a521-4c72-ad41-ac70418d4ea0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_d4e8aacd-5f64-495a-9559-ce50f2ea57d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_7419a868-7416-4621-82fb-b73b6ebd347a" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_d4e8aacd-5f64-495a-9559-ce50f2ea57d9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_7f4db6ce-1393-4fa6-af3f-705a72c08cc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_4fc85e60-2da0-4b41-8327-bfa5513763b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_7f4db6ce-1393-4fa6-af3f-705a72c08cc1" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_4fc85e60-2da0-4b41-8327-bfa5513763b1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_876e5121-9dd3-48b0-a500-bb69e91f1892" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_7f4db6ce-1393-4fa6-af3f-705a72c08cc1" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_876e5121-9dd3-48b0-a500-bb69e91f1892" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_d3dca904-7eba-4997-abd7-ccd031afcc2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_ea0fda6d-64c0-4863-a3ee-51207b194f10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_d3dca904-7eba-4997-abd7-ccd031afcc2a" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_ea0fda6d-64c0-4863-a3ee-51207b194f10" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_bf804376-3ceb-4ad0-8b41-9eaf27eb6a68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_d3dca904-7eba-4997-abd7-ccd031afcc2a" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_bf804376-3ceb-4ad0-8b41-9eaf27eb6a68" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_d3a63066-660f-47e7-914e-ce8962f9c7fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_d3dca904-7eba-4997-abd7-ccd031afcc2a" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_d3a63066-660f-47e7-914e-ce8962f9c7fe" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_35cf134f-5100-4afc-8fec-3b502dce45cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_35cf134f-5100-4afc-8fec-3b502dce45cf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_51c4f743-de10-4199-9fe3-086ff48a93d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_51c4f743-de10-4199-9fe3-086ff48a93d5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1e5d7cb7-00da-43fb-8385-3203f7625605" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1e5d7cb7-00da-43fb-8385-3203f7625605" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_14f04134-3ea8-4718-9622-e68e185a37a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_14f04134-3ea8-4718-9622-e68e185a37a7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent_bf16ecd7-f450-421e-b7f1-8b0a9eb64573" xlink:href="rock-20221231.xsd#rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:to="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent_bf16ecd7-f450-421e-b7f1-8b0a9eb64573" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_769bfb95-d928-4046-874b-55aa0399486e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_769bfb95-d928-4046-874b-55aa0399486e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_f2918cb6-ddc1-4779-853e-1182e59b8e85" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_af3e3f3b-a532-41e7-9754-2cf4ccc0c85e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_f2918cb6-ddc1-4779-853e-1182e59b8e85" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_914d74c8-6a91-4bc2-8b13-5fb3e66473f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_914d74c8-6a91-4bc2-8b13-5fb3e66473f3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_331f2ef1-6b7a-4e38-be94-3e0e82666d55" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_331f2ef1-6b7a-4e38-be94-3e0e82666d55" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_67a5a7ff-b8aa-411d-ab4e-82d32861a36b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCredits"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_67a5a7ff-b8aa-411d-ab4e-82d32861a36b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_0fbd565d-e499-49d9-8743-b28a84564501" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_0fbd565d-e499-49d9-8743-b28a84564501" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount_704caea9-db29-4555-8506-e6f3955cecc9" xlink:href="rock-20221231.xsd#rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:to="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount_704caea9-db29-4555-8506-e6f3955cecc9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_d2eb24fd-5d25-4c8a-8ed8-37288acc4adb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_d2eb24fd-5d25-4c8a-8ed8-37288acc4adb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_bc227a7c-e5fa-4b7e-8c9f-82d82630b324" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_8aa56870-3578-4be2-9f3d-e4ad77dd99ed" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_bc227a7c-e5fa-4b7e-8c9f-82d82630b324" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_416e2bde-3a5c-47a8-8af9-7318005e9383" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_29e8cb33-f017-41bc-843c-92d945eeee7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_416e2bde-3a5c-47a8-8af9-7318005e9383" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_29e8cb33-f017-41bc-843c-92d945eeee7b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_f33aa2c5-d812-4815-b96a-287ef5ca091c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_416e2bde-3a5c-47a8-8af9-7318005e9383" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_f33aa2c5-d812-4815-b96a-287ef5ca091c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_8def4dbe-dd18-4f90-91bf-c6fb105abba8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_d6f40d3a-8a7e-4a3e-ab37-ea91410318ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_8def4dbe-dd18-4f90-91bf-c6fb105abba8" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_d6f40d3a-8a7e-4a3e-ab37-ea91410318ae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_605a8eed-49c2-4d3e-9f69-000fd0fc4b0c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_8def4dbe-dd18-4f90-91bf-c6fb105abba8" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_605a8eed-49c2-4d3e-9f69-000fd0fc4b0c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_f2c82c83-9ce0-44f7-8142-782f425e57e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_4d5c5b6c-2362-468c-a62a-420dcd1dde89" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f2c82c83-9ce0-44f7-8142-782f425e57e6" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_4d5c5b6c-2362-468c-a62a-420dcd1dde89" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_dfbb3020-e13e-4883-9abe-57b9311e9cc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f2c82c83-9ce0-44f7-8142-782f425e57e6" xlink:to="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_dfbb3020-e13e-4883-9abe-57b9311e9cc1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_100e5cc8-2ec5-4005-a827-780bf070538c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f2c82c83-9ce0-44f7-8142-782f425e57e6" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_100e5cc8-2ec5-4005-a827-780bf070538c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_9cf685b0-577e-484c-8fe5-b1c71fdaeb8b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsCapitalLossCarryforwards"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f2c82c83-9ce0-44f7-8142-782f425e57e6" xlink:to="loc_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_9cf685b0-577e-484c-8fe5-b1c71fdaeb8b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness_81a182ca-ad5d-4372-a7ec-6dce83cf0ee0" xlink:href="rock-20221231.xsd#rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f2c82c83-9ce0-44f7-8142-782f425e57e6" xlink:to="loc_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness_81a182ca-ad5d-4372-a7ec-6dce83cf0ee0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_c58bbf07-14a5-4a7a-8504-b0610fc3559f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_abb191d8-83a5-4369-a516-50bc484a9285" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_c58bbf07-14a5-4a7a-8504-b0610fc3559f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_abb191d8-83a5-4369-a516-50bc484a9285" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill_5eacdbef-86a3-40a9-bbba-405f59558b62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_c58bbf07-14a5-4a7a-8504-b0610fc3559f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill_5eacdbef-86a3-40a9-bbba-405f59558b62" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_26fca5bf-9bb7-4ef8-9d77-e2e02dc4cce2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_c58bbf07-14a5-4a7a-8504-b0610fc3559f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_26fca5bf-9bb7-4ef8-9d77-e2e02dc4cce2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_8c924a55-16f0-4281-84ef-ad09592efb92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_c58bbf07-14a5-4a7a-8504-b0610fc3559f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_8c924a55-16f0-4281-84ef-ad09592efb92" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_95c94c03-e3c5-469a-a5d5-328914c9c866" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_87685036-987f-497d-831e-03cf8c593d19" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_95c94c03-e3c5-469a-a5d5-328914c9c866" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_87685036-987f-497d-831e-03cf8c593d19" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_03c8677d-2918-4792-9826-94190df922cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_95c94c03-e3c5-469a-a5d5-328914c9c866" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_03c8677d-2918-4792-9826-94190df922cd" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesAssetsandLiabilitiesofLesseeDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_935349f2-c33b-47bf-a0d4-d3eaa357a431" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_1e50b68d-df75-47e9-99a1-ce6846af418f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_935349f2-c33b-47bf-a0d4-d3eaa357a431" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_1e50b68d-df75-47e9-99a1-ce6846af418f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_e23b0d56-4cf4-4ff0-9519-e241788c93d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_935349f2-c33b-47bf-a0d4-d3eaa357a431" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_e23b0d56-4cf4-4ff0-9519-e241788c93d8" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesMaturityofLeasePaymentsDetails"/>
  <link:calculationLink xlink:role="http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2ac8c893-86ba-4ccc-ad18-446d609cf242" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_75e9a140-577f-42db-add7-a307c90a70c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2ac8c893-86ba-4ccc-ad18-446d609cf242" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_75e9a140-577f-42db-add7-a307c90a70c3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_43ee1e62-70c9-4fff-8c08-6cd5870bffe2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2ac8c893-86ba-4ccc-ad18-446d609cf242" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_43ee1e62-70c9-4fff-8c08-6cd5870bffe2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_61df3438-40f1-4633-a93b-51b68349eb54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2ac8c893-86ba-4ccc-ad18-446d609cf242" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_61df3438-40f1-4633-a93b-51b68349eb54" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_b33ffb79-00f1-4aef-b721-9bc3ee7a8e65" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2ac8c893-86ba-4ccc-ad18-446d609cf242" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_b33ffb79-00f1-4aef-b721-9bc3ee7a8e65" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_268cb0ff-4681-4d6c-b91f-ca13934bd34f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2ac8c893-86ba-4ccc-ad18-446d609cf242" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_268cb0ff-4681-4d6c-b91f-ca13934bd34f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_1fecac34-f8c2-4cb3-acc7-1d4c57521f85" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2ac8c893-86ba-4ccc-ad18-446d609cf242" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_1fecac34-f8c2-4cb3-acc7-1d4c57521f85" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>11
<FILENAME>rock-20221231_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:494ce7ad-dd21-4422-be07-151863b91ba7,g:883578fa-a7f5-4214-bb5b-e80105339f54-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofStockholdersEquity"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="extended" id="if8d2036ffaa54e64a0fbac3e71c5d48f_ConsolidatedStatementsofStockholdersEquity">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_0e4f5ef3-e768-4e28-994a-911f281561aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_0e4f5ef3-e768-4e28-994a-911f281561aa" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_8425c0c5-326e-485a-8011-2ea7598891c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_SharesIssued_8425c0c5-326e-485a-8011-2ea7598891c5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_31e40833-a296-433f-a05f-9c31d4d07024" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockholdersEquity_31e40833-a296-433f-a05f-9c31d4d07024" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_b9aa575c-a06a-47b5-95d7-8364d55a56c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_NetIncomeLoss_b9aa575c-a06a-47b5-95d7-8364d55a56c6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_39355aec-016b-4466-b9bb-0df0b18f0b28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_39355aec-016b-4466-b9bb-0df0b18f0b28" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_c43749fe-5847-436c-a25c-ed1fe095c2e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_c43749fe-5847-436c-a25c-ed1fe095c2e6" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_6db78677-3a18-4089-86a8-468b564b32e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_6db78677-3a18-4089-86a8-468b564b32e1" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement_951d7a82-b7c0-45c7-92ff-a1beccc233e8" xlink:href="rock-20221231.xsd#rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement_951d7a82-b7c0-45c7-92ff-a1beccc233e8" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement_f62cf672-46c8-4661-87fb-8dfd9afe0ffc" xlink:href="rock-20221231.xsd#rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement_f62cf672-46c8-4661-87fb-8dfd9afe0ffc" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesOther_5410ed62-939f-43bd-979f-70413bad1dd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesOther_5410ed62-939f-43bd-979f-70413bad1dd7" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_a2d7b330-beb3-43d8-b2fb-0ef5f5412cb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_a2d7b330-beb3-43d8-b2fb-0ef5f5412cb2" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_9ce5a9d5-0e72-4a41-94d3-538c566cdbd5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_9ce5a9d5-0e72-4a41-94d3-538c566cdbd5" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_476ac823-193c-4d21-804a-30d9ce6672a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_476ac823-193c-4d21-804a-30d9ce6672a4" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_01c76205-7aa4-43a2-820b-dfda85a50646" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_01c76205-7aa4-43a2-820b-dfda85a50646" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_b8006966-ba6d-4d50-b6b4-86fd0f6105c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesIssued"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_62444ad0-977f-473a-a0ef-def34bfe50ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_0e4f5ef3-e768-4e28-994a-911f281561aa" xlink:to="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_65083868-3320-4e18-8f00-86158d9f9f5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_65083868-3320-4e18-8f00-86158d9f9f5d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_65083868-3320-4e18-8f00-86158d9f9f5d_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_65083868-3320-4e18-8f00-86158d9f9f5d" xlink:to="loc_us-gaap_EquityComponentDomain_65083868-3320-4e18-8f00-86158d9f9f5d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_65083868-3320-4e18-8f00-86158d9f9f5d" xlink:to="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_b2561014-4fac-4177-9012-e9b82b44a9c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_CommonStockMember_b2561014-4fac-4177-9012-e9b82b44a9c5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_e9cd5f03-bace-4f35-88e5-5b84ec213fa4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_e9cd5f03-bace-4f35-88e5-5b84ec213fa4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_8e6c07e6-6166-4eb7-8f0d-2f6cd49e177e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_RetainedEarningsMember_8e6c07e6-6166-4eb7-8f0d-2f6cd49e177e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_dce59a28-990b-405b-b19b-96a936157e60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_dce59a28-990b-405b-b19b-96a936157e60" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_2e040f4e-df38-497a-a8f9-07550ad2523a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_TreasuryStockMember_2e040f4e-df38-497a-a8f9-07550ad2523a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_e25f0e67-0622-49cf-855b-95cf80e2eab7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_e25f0e67-0622-49cf-855b-95cf80e2eab7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_e25f0e67-0622-49cf-855b-95cf80e2eab7_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_e25f0e67-0622-49cf-855b-95cf80e2eab7" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_e25f0e67-0622-49cf-855b-95cf80e2eab7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cf49e51b-1950-4eb4-b683-849f7dfbdf7c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_e25f0e67-0622-49cf-855b-95cf80e2eab7" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cf49e51b-1950-4eb4-b683-849f7dfbdf7c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_eb74c2ba-f7e0-45d9-b236-9842f1f9aa8a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cf49e51b-1950-4eb4-b683-849f7dfbdf7c" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_eb74c2ba-f7e0-45d9-b236-9842f1f9aa8a" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsTables"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables" xlink:type="extended" id="i5a3d0bb3058c476cbe378a81bc64de8c_PensionandOtherPostretirementBenefitsTables">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock_55b75715-a357-49b4-ad1c-8c85aef49d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock_55b75715-a357-49b4-ad1c-8c85aef49d27" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetFundedStatusTableTextBlock_e179492d-64f5-43af-8cca-666cf8419bdd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNetFundedStatusTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfNetFundedStatusTableTextBlock_e179492d-64f5-43af-8cca-666cf8419bdd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock_f404c41c-7e80-4d00-906f-aa6a92afe70e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock_f404c41c-7e80-4d00-906f-aa6a92afe70e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_aaa650e4-c57e-48d9-9a5d-43d388ffdf32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNetBenefitCostsTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_aaa650e4-c57e-48d9-9a5d-43d388ffdf32" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_bb28b386-7b8c-4314-8cdf-be679df3c506" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_bb28b386-7b8c-4314-8cdf-be679df3c506" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_122a8826-8176-4688-bd99-b874b11d60f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_122a8826-8176-4688-bd99-b874b11d60f5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_583c2958-27d3-4f3c-a676-cdd14e4e8112" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_122a8826-8176-4688-bd99-b874b11d60f5" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_583c2958-27d3-4f3c-a676-cdd14e4e8112" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_583c2958-27d3-4f3c-a676-cdd14e4e8112_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_583c2958-27d3-4f3c-a676-cdd14e4e8112" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_583c2958-27d3-4f3c-a676-cdd14e4e8112_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_9ca3b1ad-b216-424f-b9be-1efe51e240f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_583c2958-27d3-4f3c-a676-cdd14e4e8112" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_9ca3b1ad-b216-424f-b9be-1efe51e240f2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_42b436a2-628e-44a5-be96-8e28f8b2da45" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_9ca3b1ad-b216-424f-b9be-1efe51e240f2" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_42b436a2-628e-44a5-be96-8e28f8b2da45" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails" xlink:type="extended" id="ief419e0581774987aa432199ab43d8f6_SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_9de081e1-ed73-4151-92fb-5c1d5722c036" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_9de081e1-ed73-4151-92fb-5c1d5722c036" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_c605c309-f614-49aa-bbfe-b34d00d21042" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_c605c309-f614-49aa-bbfe-b34d00d21042" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_fc23aecd-99e3-4e29-b12d-4561d5db1352" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_fc23aecd-99e3-4e29-b12d-4561d5db1352" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_e9bcd214-ba4e-4fa2-ad68-7ef810b58f98" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_686325d1-9e48-42dc-8bfc-2f1fd23bc593" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_686325d1-9e48-42dc-8bfc-2f1fd23bc593" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_4fc8374d-83a6-40bf-b49a-dafe2b348f4e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_686325d1-9e48-42dc-8bfc-2f1fd23bc593" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_4fc8374d-83a6-40bf-b49a-dafe2b348f4e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_4fc8374d-83a6-40bf-b49a-dafe2b348f4e_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_4fc8374d-83a6-40bf-b49a-dafe2b348f4e" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_4fc8374d-83a6-40bf-b49a-dafe2b348f4e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_d285c181-c2b6-4bfb-966b-b1a8ac40f2ab" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_4fc8374d-83a6-40bf-b49a-dafe2b348f4e" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_d285c181-c2b6-4bfb-966b-b1a8ac40f2ab" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_ce9d1553-1bc0-46de-acd1-50d0474f0889" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_d285c181-c2b6-4bfb-966b-b1a8ac40f2ab" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_ce9d1553-1bc0-46de-acd1-50d0474f0889" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPoliciesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" xlink:type="extended" id="ib10b14153b63456290f16164d1984720_SummaryofSignificantAccountingPoliciesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleLeasebackTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_75310e39-27da-4f81-bb55-9e6258586fad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_NumberOfReportableSegments_75310e39-27da-4f81-bb55-9e6258586fad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_bf4b6e2e-e59d-4e2a-94ac-e46a3ccbb98d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_bf4b6e2e-e59d-4e2a-94ac-e46a3ccbb98d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_0d839ad6-550e-4219-9506-f3eb42d660d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_0d839ad6-550e-4219-9506-f3eb42d660d3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense_8eacc2e7-c94e-4675-808b-9939a1ff0540" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_AdvertisingExpense_8eacc2e7-c94e-4675-808b-9939a1ff0540" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleLeasebackTransactionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_a7b97257-1b30-4e81-ad25-1ec2e5752ee1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_a7b97257-1b30-4e81-ad25-1ec2e5752ee1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_a7b97257-1b30-4e81-ad25-1ec2e5752ee1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_a7b97257-1b30-4e81-ad25-1ec2e5752ee1" xlink:to="loc_us-gaap_EquityComponentDomain_a7b97257-1b30-4e81-ad25-1ec2e5752ee1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_3a165eec-01f3-45bf-aa1a-e2589357174b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_a7b97257-1b30-4e81-ad25-1ec2e5752ee1" xlink:to="loc_us-gaap_EquityComponentDomain_3a165eec-01f3-45bf-aa1a-e2589357174b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_1cb1afca-d88f-4d0f-9955-1e6d1b3e82fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_3a165eec-01f3-45bf-aa1a-e2589357174b" xlink:to="loc_us-gaap_RetainedEarningsMember_1cb1afca-d88f-4d0f-9955-1e6d1b3e82fd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_6baec338-c48f-4d7c-9192-0f8e45fd8687" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_6baec338-c48f-4d7c-9192-0f8e45fd8687" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_6baec338-c48f-4d7c-9192-0f8e45fd8687_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_6baec338-c48f-4d7c-9192-0f8e45fd8687" xlink:to="loc_us-gaap_SegmentDomain_6baec338-c48f-4d7c-9192-0f8e45fd8687_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_6baec338-c48f-4d7c-9192-0f8e45fd8687" xlink:to="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_525d5dbc-bb81-4308-b21d-fc7ea97e4ef3" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:to="loc_rock_ResidentialMember_525d5dbc-bb81-4308-b21d-fc7ea97e4ef3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesAndAgtechMember_f324524d-4813-45b7-951d-bf95f738c6dc" xlink:href="rock-20221231.xsd#rock_RenewablesAndAgtechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:to="loc_rock_RenewablesAndAgtechMember_f324524d-4813-45b7-951d-bf95f738c6dc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_694e519b-0052-44b6-9a56-02a0412066a7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_srt_MajorCustomersAxis_694e519b-0052-44b6-9a56-02a0412066a7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_694e519b-0052-44b6-9a56-02a0412066a7_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_694e519b-0052-44b6-9a56-02a0412066a7" xlink:to="loc_srt_NameOfMajorCustomerDomain_694e519b-0052-44b6-9a56-02a0412066a7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_c10721b3-b908-40a7-aa70-c01f6fca5c47" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_694e519b-0052-44b6-9a56-02a0412066a7" xlink:to="loc_srt_NameOfMajorCustomerDomain_c10721b3-b908-40a7-aa70-c01f6fca5c47" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_HomeImprovementRetailCompanyMember_a845dce1-79b4-4755-b7f1-1866f8cb05f8" xlink:href="rock-20221231.xsd#rock_HomeImprovementRetailCompanyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_c10721b3-b908-40a7-aa70-c01f6fca5c47" xlink:to="loc_rock_HomeImprovementRetailCompanyMember_a845dce1-79b4-4755-b7f1-1866f8cb05f8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_92d44d77-f18e-45ed-9063-7426444b6995" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_92d44d77-f18e-45ed-9063-7426444b6995" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_92d44d77-f18e-45ed-9063-7426444b6995_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_92d44d77-f18e-45ed-9063-7426444b6995" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_92d44d77-f18e-45ed-9063-7426444b6995_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_92d44d77-f18e-45ed-9063-7426444b6995" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_9dd2d0d7-49e3-4167-ab7f-1fecb64c6dcd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:to="loc_us-gaap_AccountsReceivableMember_9dd2d0d7-49e3-4167-ab7f-1fecb64c6dcd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_c3298015-ff73-4892-bd68-31d57c96047f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:to="loc_us-gaap_SalesRevenueNetMember_c3298015-ff73-4892-bd68-31d57c96047f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_3290ebea-aff1-492d-bf88-df66ab221271" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_srt_RangeAxis_3290ebea-aff1-492d-bf88-df66ab221271" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_3290ebea-aff1-492d-bf88-df66ab221271_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_3290ebea-aff1-492d-bf88-df66ab221271" xlink:to="loc_srt_RangeMember_3290ebea-aff1-492d-bf88-df66ab221271_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_3290ebea-aff1-492d-bf88-df66ab221271" xlink:to="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_0e7fa7d8-2885-4e6a-a137-8a36af221234" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:to="loc_srt_MinimumMember_0e7fa7d8-2885-4e6a-a137-8a36af221234" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_ced9b16f-b695-40b1-89a5-60cacc09ab16" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:to="loc_srt_MaximumMember_ced9b16f-b695-40b1-89a5-60cacc09ab16" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandBuildingsAndImprovementsMember_cb44f204-6f01-4949-85b7-db0dc269e4ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandBuildingsAndImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:to="loc_us-gaap_LandBuildingsAndImprovementsMember_cb44f204-6f01-4949-85b7-db0dc269e4ad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_0cdd7b85-9249-4e23-9b53-3368d7b3444a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_0cdd7b85-9249-4e23-9b53-3368d7b3444a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_486184b4-be59-4544-af3b-adbfd346eba6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_486184b4-be59-4544-af3b-adbfd346eba6" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_486184b4-be59-4544-af3b-adbfd346eba6_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_486184b4-be59-4544-af3b-adbfd346eba6" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_486184b4-be59-4544-af3b-adbfd346eba6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_f7c2aab8-06ca-44d3-8e81-39679a8f88cf" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_486184b4-be59-4544-af3b-adbfd346eba6" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_f7c2aab8-06ca-44d3-8e81-39679a8f88cf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_175d6252-49c4-4cbf-94e4-65e3acdbcf26" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_f7c2aab8-06ca-44d3-8e81-39679a8f88cf" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_175d6252-49c4-4cbf-94e4-65e3acdbcf26" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_89a40f6f-afed-4cf4-b298-2a936facc12e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_89a40f6f-afed-4cf4-b298-2a936facc12e" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_89a40f6f-afed-4cf4-b298-2a936facc12e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_89a40f6f-afed-4cf4-b298-2a936facc12e" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_89a40f6f-afed-4cf4-b298-2a936facc12e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_8530e94a-2e87-4f72-bd29-dd0be7a99ecd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_89a40f6f-afed-4cf4-b298-2a936facc12e" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_8530e94a-2e87-4f72-bd29-dd0be7a99ecd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_7ca756cf-6020-4183-a03a-7d15da6b0e13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_8530e94a-2e87-4f72-bd29-dd0be7a99ecd" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_7ca756cf-6020-4183-a03a-7d15da6b0e13" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/RevenueNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#RevenueNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/RevenueNarrativeDetails" xlink:type="extended" id="if6ac5854bdf8421d98a75415c4ac3a81_RevenueNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractWithCustomerContractPaymentTerms_a6c01172-951a-4fd2-9b2d-5be1af39494f" xlink:href="rock-20221231.xsd#rock_ContractWithCustomerContractPaymentTerms"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_rock_ContractWithCustomerContractPaymentTerms_a6c01172-951a-4fd2-9b2d-5be1af39494f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_48def3be-3daf-4e51-956f-36820e04ed37" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_48def3be-3daf-4e51-956f-36820e04ed37" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract_76026c95-c890-468e-9079-659b8bc8ccd7" xlink:href="rock-20221231.xsd#rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract_76026c95-c890-468e-9079-659b8bc8ccd7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_46efec08-94c5-47b6-ab97-e279160e3967" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_46efec08-94c5-47b6-ab97-e279160e3967" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_9fd1414e-87e9-4e0d-b5bf-c86003361285" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_ContractWithCustomerLiability_9fd1414e-87e9-4e0d-b5bf-c86003361285" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable_6c158be8-04ef-4115-920d-c62769a01fa1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetReclassifiedToReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable_6c158be8-04ef-4115-920d-c62769a01fa1" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_524bd13f-2de3-4267-a20a-9345b93023fd" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:to="loc_srt_RangeAxis_524bd13f-2de3-4267-a20a-9345b93023fd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_524bd13f-2de3-4267-a20a-9345b93023fd_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_524bd13f-2de3-4267-a20a-9345b93023fd" xlink:to="loc_srt_RangeMember_524bd13f-2de3-4267-a20a-9345b93023fd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_524bd13f-2de3-4267-a20a-9345b93023fd" xlink:to="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_936d7e47-94ce-4b78-8250-d5aaed598bde" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:to="loc_srt_MinimumMember_936d7e47-94ce-4b78-8250-d5aaed598bde" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_a68a31e9-ece6-430b-931b-f06dc9f2403e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:to="loc_srt_MaximumMember_a68a31e9-ece6-430b-931b-f06dc9f2403e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_eef6d7c6-62e0-405b-bfd1-0b5383290095" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_eef6d7c6-62e0-405b-bfd1-0b5383290095" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_eef6d7c6-62e0-405b-bfd1-0b5383290095_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_eef6d7c6-62e0-405b-bfd1-0b5383290095" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_eef6d7c6-62e0-405b-bfd1-0b5383290095_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_b3797fb5-5353-45e3-82bd-2dc68e0a7519" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_eef6d7c6-62e0-405b-bfd1-0b5383290095" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_b3797fb5-5353-45e3-82bd-2dc68e0a7519" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BillingsinExcessofCostMember_d89161ac-c5d7-4c4b-b5dd-15f761ffdc80" xlink:href="rock-20221231.xsd#rock_BillingsinExcessofCostMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_b3797fb5-5353-45e3-82bd-2dc68e0a7519" xlink:to="loc_rock_BillingsinExcessofCostMember_d89161ac-c5d7-4c4b-b5dd-15f761ffdc80" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#RevenueContractAssetsandLiabilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails" xlink:type="extended" id="i7e5e0122aef24a0ca3f085581e374d42_RevenueContractAssetsandLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_14d819aa-1895-471b-ad9c-809fb47ec24f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_14d819aa-1895-471b-ad9c-809fb47ec24f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_00c65245-2c51-42b3-b464-5c9cef4634cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:to="loc_us-gaap_ContractWithCustomerLiability_00c65245-2c51-42b3-b464-5c9cef4634cb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable_14103778-bd11-4f9e-b6c0-0535064a848f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:to="loc_us-gaap_CapitalizedContractCostTable_14103778-bd11-4f9e-b6c0-0535064a848f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_759a63bf-1173-4543-a4ab-2ca3498c336b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_CapitalizedContractCostTable_14103778-bd11-4f9e-b6c0-0535064a848f" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_759a63bf-1173-4543-a4ab-2ca3498c336b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_759a63bf-1173-4543-a4ab-2ca3498c336b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_759a63bf-1173-4543-a4ab-2ca3498c336b" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_759a63bf-1173-4543-a4ab-2ca3498c336b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_224838c1-1c17-4f36-a5f8-ab6bed914bb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_759a63bf-1173-4543-a4ab-2ca3498c336b" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_224838c1-1c17-4f36-a5f8-ab6bed914bb3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BillingsinExcessofCostMember_7d9549c1-ee58-4cb6-b22c-9f7d49ed1291" xlink:href="rock-20221231.xsd#rock_BillingsinExcessofCostMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_224838c1-1c17-4f36-a5f8-ab6bed914bb3" xlink:to="loc_rock_BillingsinExcessofCostMember_7d9549c1-ee58-4cb6-b22c-9f7d49ed1291" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails" xlink:type="extended" id="i99ffb56fbc6a4b679fdfebeb20b64655_AcquisitionsNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3a4a85c3-b1f1-4396-8690-933a2a77decc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3a4a85c3-b1f1-4396-8690-933a2a77decc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_57f4aa3e-96a2-4413-b827-3cf5d7142c13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:to="loc_us-gaap_Goodwill_57f4aa3e-96a2-4413-b827-3cf5d7142c13" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfBusinessesAcquired_0b2e2421-4c5d-46a6-a33d-8d6028e28fff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfBusinessesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:to="loc_us-gaap_NumberOfBusinessesAcquired_0b2e2421-4c5d-46a6-a33d-8d6028e28fff" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_45d27972-5eea-42c6-b88f-9334c063f1ea" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_srt_RangeAxis_45d27972-5eea-42c6-b88f-9334c063f1ea" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_45d27972-5eea-42c6-b88f-9334c063f1ea_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_45d27972-5eea-42c6-b88f-9334c063f1ea" xlink:to="loc_srt_RangeMember_45d27972-5eea-42c6-b88f-9334c063f1ea_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_45d27972-5eea-42c6-b88f-9334c063f1ea" xlink:to="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_ca105ea3-08ec-43bf-a9db-783557bb3e03" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:to="loc_srt_MinimumMember_ca105ea3-08ec-43bf-a9db-783557bb3e03" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_61b86e25-bca3-45ba-8d66-77d368ea00e6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:to="loc_srt_MaximumMember_61b86e25-bca3-45ba-8d66-77d368ea00e6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_QualityAluminumProductsMember_92152f61-9d98-41ae-95cb-ed6ea814830a" xlink:href="rock-20221231.xsd#rock_QualityAluminumProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_QualityAluminumProductsMember_92152f61-9d98-41ae-95cb-ed6ea814830a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TerraSmartLLCMember_f1cb7072-0656-47a7-9543-b6f367370539" xlink:href="rock-20221231.xsd#rock_TerraSmartLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_TerraSmartLLCMember_f1cb7072-0656-47a7-9543-b6f367370539" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationMember_4f733009-aead-4aa9-ab31-21732db226c0" xlink:href="rock-20221231.xsd#rock_SunfigCorporationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_SunfigCorporationMember_4f733009-aead-4aa9-ab31-21732db226c0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ArchitecturalMailboxesLLCMember_62264e8b-ff9b-48b6-90d2-5ce290b80d31" xlink:href="rock-20221231.xsd#rock_ArchitecturalMailboxesLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_ArchitecturalMailboxesLLCMember_62264e8b-ff9b-48b6-90d2-5ce290b80d31" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeltaSeparationsLLCMember_e702c055-7f75-4e57-9835-b62c6962c72e" xlink:href="rock-20221231.xsd#rock_DeltaSeparationsLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_DeltaSeparationsLLCMember_e702c055-7f75-4e57-9835-b62c6962c72e" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ThermoEnergySystemsMember_50a89f0f-8681-41b7-b4f9-176405b055e7" xlink:href="rock-20221231.xsd#rock_ThermoEnergySystemsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_ThermoEnergySystemsMember_50a89f0f-8681-41b7-b4f9-176405b055e7" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_2098fe80-b63c-417a-877d-6c38a4d7b092" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_2098fe80-b63c-417a-877d-6c38a4d7b092" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_2098fe80-b63c-417a-877d-6c38a4d7b092_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_2098fe80-b63c-417a-877d-6c38a4d7b092" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_2098fe80-b63c-417a-877d-6c38a4d7b092_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_cd4b9af2-dd5f-4fac-a57c-11ffc9850e23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_2098fe80-b63c-417a-877d-6c38a4d7b092" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_cd4b9af2-dd5f-4fac-a57c-11ffc9850e23" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_25f513e4-0833-487b-9539-a9c603a22ae2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_cd4b9af2-dd5f-4fac-a57c-11ffc9850e23" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_25f513e4-0833-487b-9539-a9c603a22ae2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3162708f-f5c7-4831-964f-f9cf720ae93c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3162708f-f5c7-4831-964f-f9cf720ae93c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_3162708f-f5c7-4831-964f-f9cf720ae93c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3162708f-f5c7-4831-964f-f9cf720ae93c" xlink:to="loc_us-gaap_SegmentDomain_3162708f-f5c7-4831-964f-f9cf720ae93c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3162708f-f5c7-4831-964f-f9cf720ae93c" xlink:to="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_55240674-c2d6-4fec-ba52-5f597863b9c5" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:to="loc_rock_RenewablesMember_55240674-c2d6-4fec-ba52-5f597863b9c5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_59599570-dd4c-4bcc-9d79-b55a53994795" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:to="loc_rock_AgtechMember_59599570-dd4c-4bcc-9d79-b55a53994795" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_62d8371a-4167-4f11-8fc5-f9fa583a7151" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:to="loc_rock_ResidentialMember_62d8371a-4167-4f11-8fc5-f9fa583a7151" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="extended" id="ice7cdf2caac34cffa467c45c6bffbab5_AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_643f1429-2ef7-4bcb-9806-962e77092fee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_643f1429-2ef7-4bcb-9806-962e77092fee" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_dd8a0219-90f0-4201-b9f0-1ba2600be09c" xlink:href="rock-20221231.xsd#rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_dd8a0219-90f0-4201-b9f0-1ba2600be09c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_72c3c221-83e3-4515-bc53-8b943e6183fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_72c3c221-83e3-4515-bc53-8b943e6183fc" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_424db610-b1b1-4d08-9a6c-bbf3ad91a7df" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_424db610-b1b1-4d08-9a6c-bbf3ad91a7df" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_5153ac0e-70f9-4229-948e-af27ac96e48c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_5153ac0e-70f9-4229-948e-af27ac96e48c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_90b062a5-164e-48c7-b482-5c435a5e8d3d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_90b062a5-164e-48c7-b482-5c435a5e8d3d" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_a0b41a17-ff9c-4d8c-82c3-c7d1899a023a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_a0b41a17-ff9c-4d8c-82c3-c7d1899a023a" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_e7cfdf2c-4096-450d-98d3-3e8e9616806b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_Goodwill_e7cfdf2c-4096-450d-98d3-3e8e9616806b" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_117fb177-0f3b-4054-9524-9e10d202ba5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_117fb177-0f3b-4054-9524-9e10d202ba5e" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_3fac3032-0c91-4a21-ac66-8cd59f56217f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_3fac3032-0c91-4a21-ac66-8cd59f56217f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_2fabbf2a-8a75-4522-997b-ebd1d0d3d731" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_3fac3032-0c91-4a21-ac66-8cd59f56217f" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_2fabbf2a-8a75-4522-997b-ebd1d0d3d731" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_2fabbf2a-8a75-4522-997b-ebd1d0d3d731_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_2fabbf2a-8a75-4522-997b-ebd1d0d3d731" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_2fabbf2a-8a75-4522-997b-ebd1d0d3d731_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_2fabbf2a-8a75-4522-997b-ebd1d0d3d731" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_QualityAluminumProductsMember_49d6f481-6261-47da-a8a2-0f2bd27d724d" xlink:href="rock-20221231.xsd#rock_QualityAluminumProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:to="loc_rock_QualityAluminumProductsMember_49d6f481-6261-47da-a8a2-0f2bd27d724d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TerraSmartLLCMember_24f7e4b8-4009-4aaa-b639-7d2fdb630adc" xlink:href="rock-20221231.xsd#rock_TerraSmartLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:to="loc_rock_TerraSmartLLCMember_24f7e4b8-4009-4aaa-b639-7d2fdb630adc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_047e6d24-8bfb-4ede-b8fb-da4e1d8f36ef" xlink:href="rock-20221231.xsd#rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:to="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_047e6d24-8bfb-4ede-b8fb-da4e1d8f36ef" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsScheduleofAcquiredIntangibleAssetsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="extended" id="i4afa808e580d47bc8e9877aee9d7b6fd_AcquisitionsScheduleofAcquiredIntangibleAssetsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefinitelivedIntangibleAssetsAcquired_04584432-246b-45f1-8a88-869550f61d5b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefinitelivedIntangibleAssetsAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:to="loc_us-gaap_IndefinitelivedIntangibleAssetsAcquired_04584432-246b-45f1-8a88-869550f61d5b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_317708f1-e574-419a-bbec-2f3e6db0de30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_317708f1-e574-419a-bbec-2f3e6db0de30" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_3625568c-3b05-4614-8edc-7791c9a7521f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_3625568c-3b05-4614-8edc-7791c9a7521f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_da02de83-d1d3-4aa6-964f-89b221c6643b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_da02de83-d1d3-4aa6-964f-89b221c6643b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_da02de83-d1d3-4aa6-964f-89b221c6643b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_da02de83-d1d3-4aa6-964f-89b221c6643b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_da02de83-d1d3-4aa6-964f-89b221c6643b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_da02de83-d1d3-4aa6-964f-89b221c6643b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_QualityAluminumProductsMember_54339ad6-2dc7-4487-9fa9-d5dba1891dd0" xlink:href="rock-20221231.xsd#rock_QualityAluminumProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:to="loc_rock_QualityAluminumProductsMember_54339ad6-2dc7-4487-9fa9-d5dba1891dd0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TerraSmartLLCMember_396d8cd5-5b8f-48f8-8e5d-01625d1ccc9c" xlink:href="rock-20221231.xsd#rock_TerraSmartLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:to="loc_rock_TerraSmartLLCMember_396d8cd5-5b8f-48f8-8e5d-01625d1ccc9c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_3750acf7-ba4b-47e8-900c-3ff261d7c6c7" xlink:href="rock-20221231.xsd#rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:to="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_3750acf7-ba4b-47e8-900c-3ff261d7c6c7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a3bac7d7-3e06-4831-81bc-9f619683c08d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a3bac7d7-3e06-4831-81bc-9f619683c08d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_a3bac7d7-3e06-4831-81bc-9f619683c08d_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a3bac7d7-3e06-4831-81bc-9f619683c08d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_a3bac7d7-3e06-4831-81bc-9f619683c08d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a3bac7d7-3e06-4831-81bc-9f619683c08d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_884d3c95-c73d-4a8b-b74c-36454b7efbe3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_TrademarksMember_884d3c95-c73d-4a8b-b74c-36454b7efbe3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyEquipmentMember_412a17e4-8e64-4816-ada3-8d79fb5b297b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TechnologyEquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_TechnologyEquipmentMember_412a17e4-8e64-4816-ada3-8d79fb5b297b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_f465ed95-15b2-42a2-b80f-1c87b7c59f5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_CustomerRelationshipsMember_f465ed95-15b2-42a2-b80f-1c87b7c59f5f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_80654736-bf8f-4865-a7ca-af39c78312a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_80654736-bf8f-4865-a7ca-af39c78312a7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BacklogMember_b44b0f36-fdd4-4cea-81da-86a037c45f9f" xlink:href="rock-20221231.xsd#rock_BacklogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_rock_BacklogMember_b44b0f36-fdd4-4cea-81da-86a037c45f9f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_46389742-617c-4003-9c9e-d22fb49e845c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_46389742-617c-4003-9c9e-d22fb49e845c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_46389742-617c-4003-9c9e-d22fb49e845c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_46389742-617c-4003-9c9e-d22fb49e845c" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_46389742-617c-4003-9c9e-d22fb49e845c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_07f312b1-7166-4133-8b13-8c3c795ccc2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_46389742-617c-4003-9c9e-d22fb49e845c" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_07f312b1-7166-4133-8b13-8c3c795ccc2c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_058c99be-064d-439e-b04f-bba221644f41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_07f312b1-7166-4133-8b13-8c3c795ccc2c" xlink:to="loc_us-gaap_TrademarksMember_058c99be-064d-439e-b04f-bba221644f41" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_ecea92af-59b5-4c9f-a5a4-c82f6ec30250" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_srt_RangeAxis_ecea92af-59b5-4c9f-a5a4-c82f6ec30250" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ecea92af-59b5-4c9f-a5a4-c82f6ec30250_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_ecea92af-59b5-4c9f-a5a4-c82f6ec30250" xlink:to="loc_srt_RangeMember_ecea92af-59b5-4c9f-a5a4-c82f6ec30250_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_ecea92af-59b5-4c9f-a5a4-c82f6ec30250" xlink:to="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_3f15ac02-5c6e-4858-8a13-35c5115190be" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:to="loc_srt_MinimumMember_3f15ac02-5c6e-4858-8a13-35c5115190be" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_52eadbd9-2e22-46ef-b30f-3baf3b576a59" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:to="loc_srt_MaximumMember_52eadbd9-2e22-46ef-b30f-3baf3b576a59" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsAcquisitionRelatedCostsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails" xlink:type="extended" id="ic6a9e26b2f1540bab2b6ff6588039100_AcquisitionsAcquisitionRelatedCostsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_ac47ac74-f0bd-4301-86ce-13826b21310e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_b1091591-bd8a-43d3-bea5-bab1b60bb491" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_ac47ac74-f0bd-4301-86ce-13826b21310e" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_b1091591-bd8a-43d3-bea5-bab1b60bb491" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_9540c2a1-38aa-414f-8ac0-e7bac06e6d66" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_ac47ac74-f0bd-4301-86ce-13826b21310e" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_9540c2a1-38aa-414f-8ac0-e7bac06e6d66" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_85295ee5-200e-4131-a9b6-26a0baa4162d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_9540c2a1-38aa-414f-8ac0-e7bac06e6d66" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_85295ee5-200e-4131-a9b6-26a0baa4162d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_85295ee5-200e-4131-a9b6-26a0baa4162d_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_85295ee5-200e-4131-a9b6-26a0baa4162d" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_85295ee5-200e-4131-a9b6-26a0baa4162d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_85295ee5-200e-4131-a9b6-26a0baa4162d" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_4f81c291-d69d-4008-8b66-d1286a718977" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:to="loc_us-gaap_CostOfSalesMember_4f81c291-d69d-4008-8b66-d1286a718977" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_f186af69-e7d4-45b0-9f3b-aa6e4d4ed371" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_f186af69-e7d4-45b0-9f3b-aa6e4d4ed371" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails" xlink:type="extended" id="i99032b1a74fc407b9b5f5eefbca1a93a_GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_cf41b30a-f4cc-409d-a4d8-2d41d122c0a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_cf41b30a-f4cc-409d-a4d8-2d41d122c0a3" xlink:to="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_6e57b649-93b2-4baf-9ee8-611cba6e57fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_Goodwill_6e57b649-93b2-4baf-9ee8-611cba6e57fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_71c53051-4859-4384-9e46-853e77d603da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_71c53051-4859-4384-9e46-853e77d603da" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_00b9f7ac-3fba-436a-8edf-b3ec1291d0d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_00b9f7ac-3fba-436a-8edf-b3ec1291d0d4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_38cfc6ac-c23d-42e8-8707-a22caa85f696" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_38cfc6ac-c23d-42e8-8707-a22caa85f696" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_5a0a4994-de01-44e5-b53c-766c8d7b3144" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_e74da461-717b-4d4f-b2d2-981b86414baf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_cf41b30a-f4cc-409d-a4d8-2d41d122c0a3" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_e74da461-717b-4d4f-b2d2-981b86414baf" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3625c0e0-9f78-408e-b8b6-5b70504eaa21" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_e74da461-717b-4d4f-b2d2-981b86414baf" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3625c0e0-9f78-408e-b8b6-5b70504eaa21" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_3625c0e0-9f78-408e-b8b6-5b70504eaa21_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3625c0e0-9f78-408e-b8b6-5b70504eaa21" xlink:to="loc_us-gaap_SegmentDomain_3625c0e0-9f78-408e-b8b6-5b70504eaa21_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3625c0e0-9f78-408e-b8b6-5b70504eaa21" xlink:to="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_bc86e925-3949-42c0-b588-dc89e4b635cd" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_RenewablesMember_bc86e925-3949-42c0-b588-dc89e4b635cd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_c671a3a6-6311-487b-b9b2-c2519c409da4" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_ResidentialMember_c671a3a6-6311-487b-b9b2-c2519c409da4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_adb0c054-a163-496b-bae6-5670b3c91aac" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_AgtechMember_adb0c054-a163-496b-bae6-5670b3c91aac" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_06462bdd-61d7-440f-a5ad-1253a22a5547" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_InfrastructureMember_06462bdd-61d7-440f-a5ad-1253a22a5547" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails" xlink:type="extended" id="i452d0f1173d04a7dbf65a90d9c83a239_GoodwillandRelatedIntangibleAssetsNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_a8711293-7196-48cf-a883-bc8bbf88d3b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_a8711293-7196-48cf-a883-bc8bbf88d3b7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_e1a90b72-e1f9-45be-8731-fa98301cd35c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_e1a90b72-e1f9-45be-8731-fa98301cd35c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_88ace7e5-8eab-4f83-becb-5ff96669b59d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_88ace7e5-8eab-4f83-becb-5ff96669b59d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportingUnits_6019e40b-3145-4fa7-81e2-80333be817aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportingUnits"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_NumberOfReportingUnits_6019e40b-3145-4fa7-81e2-80333be817aa" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits_2eb14849-ed75-45c9-b251-6340e8db4ef4" xlink:href="rock-20221231.xsd#rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits_2eb14849-ed75-45c9-b251-6340e8db4ef4" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_a8d7459b-d0b1-42f8-bbab-89c983096fc2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_a8d7459b-d0b1-42f8-bbab-89c983096fc2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_b49d7dc5-142a-4e40-b60f-ecd972c1c7b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_b49d7dc5-142a-4e40-b60f-ecd972c1c7b0" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_209406ed-b45e-4b67-bd11-7191f9a979f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_b49d7dc5-142a-4e40-b60f-ecd972c1c7b0" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_209406ed-b45e-4b67-bd11-7191f9a979f8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_209406ed-b45e-4b67-bd11-7191f9a979f8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_209406ed-b45e-4b67-bd11-7191f9a979f8" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_209406ed-b45e-4b67-bd11-7191f9a979f8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9881a1a3-1c93-475a-a166-b50bd21e513f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_209406ed-b45e-4b67-bd11-7191f9a979f8" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9881a1a3-1c93-475a-a166-b50bd21e513f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_ed230e36-59f3-44f2-8436-27ba0d47b3c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9881a1a3-1c93-475a-a166-b50bd21e513f" xlink:to="loc_us-gaap_TrademarksMember_ed230e36-59f3-44f2-8436-27ba0d47b3c2" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="extended" id="ie9c22d7c0c174609a7092baab11771f3_GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_aacc9b43-ec1d-4e05-9abd-3ca4ff337ffc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_aacc9b43-ec1d-4e05-9abd-3ca4ff337ffc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_c5e0f771-4429-4163-9ddb-e1d111a5c769" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_c5e0f771-4429-4163-9ddb-e1d111a5c769" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AcquiredIntangibleAssetsTotal_4e650d26-baf3-4b3e-8bde-9ae600695e93" xlink:href="rock-20221231.xsd#rock_AcquiredIntangibleAssetsTotal"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_rock_AcquiredIntangibleAssetsTotal_4e650d26-baf3-4b3e-8bde-9ae600695e93" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndefiniteLivedAccumulatedAmortization_a79e7549-c5a0-4958-a527-7c04edc39f92" xlink:href="rock-20221231.xsd#rock_IndefiniteLivedAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_rock_IndefiniteLivedAccumulatedAmortization_a79e7549-c5a0-4958-a527-7c04edc39f92" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_6d646892-3847-4cb7-9285-082c6b9b68cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_6d646892-3847-4cb7-9285-082c6b9b68cd" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization_99684395-43f5-47a4-acf3-a5c64f7aaf1c" xlink:href="rock-20221231.xsd#rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization_99684395-43f5-47a4-acf3-a5c64f7aaf1c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_bb386251-7001-4ebb-92a1-109a8bc684f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_bb386251-7001-4ebb-92a1-109a8bc684f1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_bb386251-7001-4ebb-92a1-109a8bc684f1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_bb386251-7001-4ebb-92a1-109a8bc684f1" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_bb386251-7001-4ebb-92a1-109a8bc684f1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f103e0f1-da90-468c-a23e-4e520f53514b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_bb386251-7001-4ebb-92a1-109a8bc684f1" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f103e0f1-da90-468c-a23e-4e520f53514b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_1a49a914-8926-4d74-8012-811f9951929b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f103e0f1-da90-468c-a23e-4e520f53514b" xlink:to="loc_us-gaap_TrademarksMember_1a49a914-8926-4d74-8012-811f9951929b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_d0ea0fcd-ed62-4dec-9805-0397a482df5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_d0ea0fcd-ed62-4dec-9805-0397a482df5e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_d0ea0fcd-ed62-4dec-9805-0397a482df5e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_d0ea0fcd-ed62-4dec-9805-0397a482df5e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_d0ea0fcd-ed62-4dec-9805-0397a482df5e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_d0ea0fcd-ed62-4dec-9805-0397a482df5e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_6b5eee66-8118-410c-b4b8-37aeb133e86d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_TrademarksMember_6b5eee66-8118-410c-b4b8-37aeb133e86d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnpatentedTechnologyMember_2cf95988-1e99-42f7-b6c2-75e9ea288565" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnpatentedTechnologyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_UnpatentedTechnologyMember_2cf95988-1e99-42f7-b6c2-75e9ea288565" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_47d2af4c-0c1d-4c31-8f56-11ceeffe2db6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_CustomerRelationshipsMember_47d2af4c-0c1d-4c31-8f56-11ceeffe2db6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_6c4ff0ea-dfb2-4184-9d47-2870cd7b0d51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_6c4ff0ea-dfb2-4184-9d47-2870cd7b0d51" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BacklogMember_de5492ac-c8fb-48db-9f45-de0d6d8553a7" xlink:href="rock-20221231.xsd#rock_BacklogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_rock_BacklogMember_de5492ac-c8fb-48db-9f45-de0d6d8553a7" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails" xlink:type="extended" id="iccaf314049be44c2a223617a44db8e25_GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_91e020ef-52f0-41f3-8406-09f6cb00ac98" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_7ba67b38-fe05-4288-8704-7d8a8d2a1335" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_91e020ef-52f0-41f3-8406-09f6cb00ac98" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_7ba67b38-fe05-4288-8704-7d8a8d2a1335" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_91e020ef-52f0-41f3-8406-09f6cb00ac98" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_98758560-b10f-4be7-828e-1e05c25e6623" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_98758560-b10f-4be7-828e-1e05c25e6623" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_98758560-b10f-4be7-828e-1e05c25e6623_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_98758560-b10f-4be7-828e-1e05c25e6623" xlink:to="loc_us-gaap_SegmentDomain_98758560-b10f-4be7-828e-1e05c25e6623_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_98758560-b10f-4be7-828e-1e05c25e6623" xlink:to="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_d436842f-f4fa-4b3b-bf3a-5b62d5b217e5" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:to="loc_rock_RenewablesMember_d436842f-f4fa-4b3b-bf3a-5b62d5b217e5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_6281dfd0-2121-4b95-8826-924c9e6d2307" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:to="loc_rock_ResidentialMember_6281dfd0-2121-4b95-8826-924c9e6d2307" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_ffcc1083-5980-4597-83a4-4e50ca09b3c5" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:to="loc_rock_InfrastructureMember_ffcc1083-5980-4597-83a4-4e50ca09b3c5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_3a0be7e9-dd96-42ea-a734-f6163cc13ae3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_3a0be7e9-dd96-42ea-a734-f6163cc13ae3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3a0be7e9-dd96-42ea-a734-f6163cc13ae3_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_3a0be7e9-dd96-42ea-a734-f6163cc13ae3" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3a0be7e9-dd96-42ea-a734-f6163cc13ae3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3e3909e0-db50-4e4f-a7ee-e351da83ae4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_3a0be7e9-dd96-42ea-a734-f6163cc13ae3" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3e3909e0-db50-4e4f-a7ee-e351da83ae4a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_850ca6f8-ba5d-4231-a6aa-409d6d6a95d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3e3909e0-db50-4e4f-a7ee-e351da83ae4a" xlink:to="loc_us-gaap_TrademarksMember_850ca6f8-ba5d-4231-a6aa-409d6d6a95d8" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DebtScheduleofLongtermDebtDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails" xlink:type="extended" id="i38ae76a57a104e6aa3e7e4838bc664d8_DebtScheduleofLongtermDebtDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_bb9a9c9c-3b7b-49e5-8375-351779cad5f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_bb9a9c9c-3b7b-49e5-8375-351779cad5f2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_cbcc0f33-044f-4a13-9fd0-e5d3b1d0fcf9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_cbcc0f33-044f-4a13-9fd0-e5d3b1d0fcf9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_f41a7315-0a37-473f-a984-54ac702115f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:to="loc_us-gaap_LongTermDebt_f41a7315-0a37-473f-a984-54ac702115f3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:to="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_a6471807-3c0c-469a-99ae-96d25c75103d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_a6471807-3c0c-469a-99ae-96d25c75103d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_a6471807-3c0c-469a-99ae-96d25c75103d_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_a6471807-3c0c-469a-99ae-96d25c75103d" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_a6471807-3c0c-469a-99ae-96d25c75103d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_3c9ea160-0273-4b73-a419-8dbb591f52ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_a6471807-3c0c-469a-99ae-96d25c75103d" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_3c9ea160-0273-4b73-a419-8dbb591f52ab" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_bfc7029d-a81c-4e23-8b4e-2d1aeddede03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_3c9ea160-0273-4b73-a419-8dbb591f52ab" xlink:to="loc_us-gaap_LineOfCreditMember_bfc7029d-a81c-4e23-8b4e-2d1aeddede03" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:to="loc_us-gaap_DebtInstrumentAxis_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_dbaac05a-05ff-4ee4-a957-b23c739eac6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_dbaac05a-05ff-4ee4-a957-b23c739eac6f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019SeniorCreditAgreementMember_8674743f-6556-484f-9313-afb478727c76" xlink:href="rock-20221231.xsd#rock_A2019SeniorCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_dbaac05a-05ff-4ee4-a957-b23c739eac6f" xlink:to="loc_rock_A2019SeniorCreditAgreementMember_8674743f-6556-484f-9313-afb478727c76" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DebtNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DebtNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/DebtNarrativeDetails" xlink:type="extended" id="i1e8cb6a0b75940ada3d755b250979c44_DebtNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_321d11a7-05d3-4fe9-a529-7dd38f55d654" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_321d11a7-05d3-4fe9-a529-7dd38f55d654" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d5ef26e6-258a-4eb3-9682-9476df55bceb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d5ef26e6-258a-4eb3-9682-9476df55bceb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_aaab1a64-761e-43d9-924e-531270adbc75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_aaab1a64-761e-43d9-924e-531270adbc75" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentNumberOfDebtCovenants_fddebb23-d649-420e-a13d-4c723d8bc6d3" xlink:href="rock-20221231.xsd#rock_DebtInstrumentNumberOfDebtCovenants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_rock_DebtInstrumentNumberOfDebtCovenants_fddebb23-d649-420e-a13d-4c723d8bc6d3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_cbdd314e-d16f-4357-92a0-27a81b299541" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_cbdd314e-d16f-4357-92a0-27a81b299541" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_a56af1e0-05ee-43bd-81b6-897ac5e802f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_a56af1e0-05ee-43bd-81b6-897ac5e802f6" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_551ecab4-3262-4d81-9548-502d7fa221bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LongTermDebt_551ecab4-3262-4d81-9548-502d7fa221bb" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3698bf65-9e90-4530-8ca7-653ccb224722" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3698bf65-9e90-4530-8ca7-653ccb224722" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_e3ef7ed8-fe3a-45b4-8993-67307f485f6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_e3ef7ed8-fe3a-45b4-8993-67307f485f6d" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_0b63bcdd-aa21-49c6-b7af-1837be11ffec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_0b63bcdd-aa21-49c6-b7af-1837be11ffec" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_06515d45-e6fb-491f-8460-fd7900f3df1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_06515d45-e6fb-491f-8460-fd7900f3df1c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_06515d45-e6fb-491f-8460-fd7900f3df1c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_06515d45-e6fb-491f-8460-fd7900f3df1c" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_06515d45-e6fb-491f-8460-fd7900f3df1c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_06515d45-e6fb-491f-8460-fd7900f3df1c" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_4a816fe4-b228-4993-afad-02a9bac30def" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:to="loc_us-gaap_LineOfCreditMember_4a816fe4-b228-4993-afad-02a9bac30def" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember_4d00301a-1ed2-423a-adfd-bb7d867ac7f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MediumTermNotesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:to="loc_us-gaap_MediumTermNotesMember_4d00301a-1ed2-423a-adfd-bb7d867ac7f1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_e30a3be3-259c-4e5b-8e35-7203b45c5abe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_DebtInstrumentAxis_e30a3be3-259c-4e5b-8e35-7203b45c5abe" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_e30a3be3-259c-4e5b-8e35-7203b45c5abe_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_e30a3be3-259c-4e5b-8e35-7203b45c5abe" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_e30a3be3-259c-4e5b-8e35-7203b45c5abe_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_e30a3be3-259c-4e5b-8e35-7203b45c5abe" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2022SeniorCreditAgreementMember_ac29c6af-c16f-428a-bbf2-b8816e2137ed" xlink:href="rock-20221231.xsd#rock_A2022SeniorCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:to="loc_rock_A2022SeniorCreditAgreementMember_ac29c6af-c16f-428a-bbf2-b8816e2137ed" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019SeniorCreditAgreementMember_7f2f6f64-3eed-44c3-ba81-cbfebe2f6aec" xlink:href="rock-20221231.xsd#rock_A2019SeniorCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:to="loc_rock_A2019SeniorCreditAgreementMember_7f2f6f64-3eed-44c3-ba81-cbfebe2f6aec" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SeniorCreditAgreementMember_e6c70bba-fd0e-4d3e-a78c-78de6e0b80fe" xlink:href="rock-20221231.xsd#rock_SeniorCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:to="loc_rock_SeniorCreditAgreementMember_e6c70bba-fd0e-4d3e-a78c-78de6e0b80fe" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_bcca531a-db0e-426f-b54d-2f04f002be08" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_CreditFacilityAxis_bcca531a-db0e-426f-b54d-2f04f002be08" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_bcca531a-db0e-426f-b54d-2f04f002be08_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_bcca531a-db0e-426f-b54d-2f04f002be08" xlink:to="loc_us-gaap_CreditFacilityDomain_bcca531a-db0e-426f-b54d-2f04f002be08_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_bcca531a-db0e-426f-b54d-2f04f002be08" xlink:to="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandbyLettersOfCreditMember_e92ef90a-8395-4e78-a5d5-28c3087cd43f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandbyLettersOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:to="loc_us-gaap_StandbyLettersOfCreditMember_e92ef90a-8395-4e78-a5d5-28c3087cd43f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_26fef1d4-78d6-4500-8350-f8d666b857c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_26fef1d4-78d6-4500-8350-f8d666b857c6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_e038f8aa-6eb0-468d-8062-085b37825141" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_srt_RangeAxis_e038f8aa-6eb0-468d-8062-085b37825141" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_e038f8aa-6eb0-468d-8062-085b37825141_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_e038f8aa-6eb0-468d-8062-085b37825141" xlink:to="loc_srt_RangeMember_e038f8aa-6eb0-468d-8062-085b37825141_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_e038f8aa-6eb0-468d-8062-085b37825141" xlink:to="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_d2a2b184-53c4-49bf-80aa-3db177a4fde2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:to="loc_srt_MinimumMember_d2a2b184-53c4-49bf-80aa-3db177a4fde2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_ee4b5263-ac57-4c79-adbb-a2a97435084b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:to="loc_srt_MaximumMember_ee4b5263-ac57-4c79-adbb-a2a97435084b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_1d9e4327-778d-4ab4-93f5-66aeaf8453ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_VariableRateAxis_1d9e4327-778d-4ab4-93f5-66aeaf8453ce" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_1d9e4327-778d-4ab4-93f5-66aeaf8453ce_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_1d9e4327-778d-4ab4-93f5-66aeaf8453ce" xlink:to="loc_us-gaap_VariableRateDomain_1d9e4327-778d-4ab4-93f5-66aeaf8453ce_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_1d9e4327-778d-4ab4-93f5-66aeaf8453ce" xlink:to="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_99b1e6fb-32aa-4c80-8fe2-107b0034930e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BaseRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:to="loc_us-gaap_BaseRateMember_99b1e6fb-32aa-4c80-8fe2-107b0034930e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SecuredOvernightFinancingRateSOFRMember_81963d88-6f7c-491b-a11a-9fecae7f14a4" xlink:href="rock-20221231.xsd#rock_SecuredOvernightFinancingRateSOFRMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:to="loc_rock_SecuredOvernightFinancingRateSOFRMember_81963d88-6f7c-491b-a11a-9fecae7f14a4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_9bccfdc6-477e-40ca-8216-d6f58ebec84b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_9bccfdc6-477e-40ca-8216-d6f58ebec84b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentApplicableRatePeriodAxis_1507b2eb-f01d-48d2-8180-76d39a78253a" xlink:href="rock-20221231.xsd#rock_DebtInstrumentApplicableRatePeriodAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_rock_DebtInstrumentApplicableRatePeriodAxis_1507b2eb-f01d-48d2-8180-76d39a78253a" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentApplicableRatePeriodDomain_1507b2eb-f01d-48d2-8180-76d39a78253a_default" xlink:href="rock-20221231.xsd#rock_DebtInstrumentApplicableRatePeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodAxis_1507b2eb-f01d-48d2-8180-76d39a78253a" xlink:to="loc_rock_DebtInstrumentApplicableRatePeriodDomain_1507b2eb-f01d-48d2-8180-76d39a78253a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:href="rock-20221231.xsd#rock_DebtInstrumentApplicableRatePeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodAxis_1507b2eb-f01d-48d2-8180-76d39a78253a" xlink:to="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApplicableRatePeriod1Member_1afec7af-8617-4537-9d39-13277fbd1648" xlink:href="rock-20221231.xsd#rock_ApplicableRatePeriod1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:to="loc_rock_ApplicableRatePeriod1Member_1afec7af-8617-4537-9d39-13277fbd1648" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApplicableRatePeriod2Member_2428a110-1e35-45c3-b6b7-4eb2d175c722" xlink:href="rock-20221231.xsd#rock_ApplicableRatePeriod2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:to="loc_rock_ApplicableRatePeriod2Member_2428a110-1e35-45c3-b6b7-4eb2d175c722" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails" xlink:type="extended" id="ie6f0a0cbaa4b4069b3fb8fc939bad72b_PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PostemploymentBenefitsPeriodExpense_f76168c9-5e70-4856-b313-bdd8360143d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsPeriodExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:to="loc_us-gaap_PostemploymentBenefitsPeriodExpense_f76168c9-5e70-4856-b313-bdd8360143d1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RetirementPlanNumberOfPlans_acc4537f-9572-492e-9bfd-78faa519887c" xlink:href="rock-20221231.xsd#rock_RetirementPlanNumberOfPlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:to="loc_rock_RetirementPlanNumberOfPlans_acc4537f-9572-492e-9bfd-78faa519887c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_f972676a-cc1e-41a2-8d32-642470506901" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_f972676a-cc1e-41a2-8d32-642470506901" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_7aab1cc3-edb5-46a4-894d-d9561febc7f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_f972676a-cc1e-41a2-8d32-642470506901" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_7aab1cc3-edb5-46a4-894d-d9561febc7f2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_7aab1cc3-edb5-46a4-894d-d9561febc7f2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_7aab1cc3-edb5-46a4-894d-d9561febc7f2" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_7aab1cc3-edb5-46a4-894d-d9561febc7f2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_7aab1cc3-edb5-46a4-894d-d9561febc7f2" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A401kPlanMember_56efdc62-deb5-4b5c-b4c5-894efbc4f2a3" xlink:href="rock-20221231.xsd#rock_A401kPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:to="loc_rock_A401kPlanMember_56efdc62-deb5-4b5c-b4c5-894efbc4f2a3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_079db30d-ca9d-4618-8ded-43edf580b420" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_079db30d-ca9d-4618-8ded-43edf580b420" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_0a2de03e-ff17-4df4-a756-8d1a3e77fed9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_0a2de03e-ff17-4df4-a756-8d1a3e77fed9" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails" xlink:type="extended" id="idb6ec909fb68489dbd448bcbfc8ab6d2_PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_9f3367b2-48f1-448a-b832-21f83d8f875e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_9f3367b2-48f1-448a-b832-21f83d8f875e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_821decc6-61c7-4099-bbed-30eed0ee6d68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_821decc6-61c7-4099-bbed-30eed0ee6d68" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_bc66c186-0067-41ab-b8fa-77309ef3dfc0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_bc66c186-0067-41ab-b8fa-77309ef3dfc0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanPlanAmendments_82e7e0ac-a5f1-4138-a7bd-1f00380d00fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanPlanAmendments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanPlanAmendments_82e7e0ac-a5f1-4138-a7bd-1f00380d00fe" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_40c87cd9-c363-4da2-832c-f39a9d3f689f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanActuarialGainLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_40c87cd9-c363-4da2-832c-f39a9d3f689f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_1a9809d5-a955-4980-8cb6-d98f33747601" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_1a9809d5-a955-4980-8cb6-d98f33747601" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_c6a91970-ef5b-440a-a050-0bee5c7e846c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_48c8da6c-5d0d-4f7d-88f1-6a6f1b9a10ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_48c8da6c-5d0d-4f7d-88f1-6a6f1b9a10ca" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_bfcb413d-f4a9-4ab6-8780-f5208ef133e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_bfcb413d-f4a9-4ab6-8780-f5208ef133e5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_8f325106-da0c-4f09-aefa-c72e4d5141d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_8f325106-da0c-4f09-aefa-c72e4d5141d4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_7c252bca-2283-42c0-ae47-01f5f0c905a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_7c252bca-2283-42c0-ae47-01f5f0c905a0" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_050769b3-c6ef-4fb6-ba24-11f3e91d3821" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_050769b3-c6ef-4fb6-ba24-11f3e91d3821" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_b37e7a6d-f7c9-4331-aa72-443ff5a8aa3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_b37e7a6d-f7c9-4331-aa72-443ff5a8aa3f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_660886ac-9ab4-4b04-8544-638e72cf0df7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_b37e7a6d-f7c9-4331-aa72-443ff5a8aa3f" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_660886ac-9ab4-4b04-8544-638e72cf0df7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_660886ac-9ab4-4b04-8544-638e72cf0df7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_660886ac-9ab4-4b04-8544-638e72cf0df7" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_660886ac-9ab4-4b04-8544-638e72cf0df7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_6f303a2f-9074-44ea-a1e1-0bd1d1e728aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_660886ac-9ab4-4b04-8544-638e72cf0df7" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_6f303a2f-9074-44ea-a1e1-0bd1d1e728aa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_41c0591f-7a54-4589-b906-39892511a363" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_6f303a2f-9074-44ea-a1e1-0bd1d1e728aa" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_41c0591f-7a54-4589-b906-39892511a363" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails" xlink:type="extended" id="ifdc5547c3a71430b96bf8e2ced8a23e8_PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_f46ddd9c-72d9-491d-9513-2cda70468ad5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_f46ddd9c-72d9-491d-9513-2cda70468ad5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent_082640c2-0480-436a-9a3d-02fabb402160" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent_082640c2-0480-436a-9a3d-02fabb402160" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax_3421906e-67dc-4ad2-b3fb-b85549ec2a0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax_3421906e-67dc-4ad2-b3fb-b85549ec2a0f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_47dc6012-f89a-4cf5-9e15-72b57a030104" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_47dc6012-f89a-4cf5-9e15-72b57a030104" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_8b671bf1-1aef-4b79-84d7-98d6689d7fbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_8b671bf1-1aef-4b79-84d7-98d6689d7fbf" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_b20a7459-143c-4fb0-ad75-aeee11b652ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_8b671bf1-1aef-4b79-84d7-98d6689d7fbf" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_b20a7459-143c-4fb0-ad75-aeee11b652ae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_b20a7459-143c-4fb0-ad75-aeee11b652ae_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_b20a7459-143c-4fb0-ad75-aeee11b652ae" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_b20a7459-143c-4fb0-ad75-aeee11b652ae_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_6fde6143-d1c9-4179-9a83-5741bb02ecb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_b20a7459-143c-4fb0-ad75-aeee11b652ae" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_6fde6143-d1c9-4179-9a83-5741bb02ecb8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a1cd8c6b-f874-4fad-a1c0-6b0f6b58a8ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_6fde6143-d1c9-4179-9a83-5741bb02ecb8" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a1cd8c6b-f874-4fad-a1c0-6b0f6b58a8ae" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails" xlink:type="extended" id="i51cdecd7d84b4f24bec11772102ebbdc_PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_1cc3d3df-af70-49bd-b17d-4a96ab0a51f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_1cc3d3df-af70-49bd-b17d-4a96ab0a51f6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_08cded9b-6d8b-4324-b42b-3746fac0803c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_08cded9b-6d8b-4324-b42b-3746fac0803c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_e46366ee-0e0d-4c1e-a728-187f7ef46262" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_e46366ee-0e0d-4c1e-a728-187f7ef46262" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_0afc1503-f96d-417b-b53a-5604dfacfee8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_0afc1503-f96d-417b-b53a-5604dfacfee8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_bcca651a-9759-4178-9497-b82436eafeda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_bcca651a-9759-4178-9497-b82436eafeda" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_b5c0c536-8afe-40d6-bb27-8bc6680d8488" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_b5c0c536-8afe-40d6-bb27-8bc6680d8488" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65_49a24f4b-15ff-4708-8eac-487b2d57c1b5" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65_49a24f4b-15ff-4708-8eac-487b2d57c1b5" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65_4886accb-087c-44a2-93cd-24508043d489" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65_4886accb-087c-44a2-93cd-24508043d489" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts_5b304a5f-f983-4197-ab4d-c40d936aa7bd" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts_5b304a5f-f983-4197-ab4d-c40d936aa7bd" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1_fda254a7-131c-4688-8dc6-f34bd3a2ccf2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1_fda254a7-131c-4688-8dc6-f34bd3a2ccf2" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NetPeriodicPostRetirementCostTable_f7a32475-32a1-48f9-873e-fede0c130395" xlink:href="rock-20221231.xsd#rock_NetPeriodicPostRetirementCostTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_rock_NetPeriodicPostRetirementCostTable_f7a32475-32a1-48f9-873e-fede0c130395" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_6107f14b-5e6a-4490-a2b0-05fabc3be4d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rock_NetPeriodicPostRetirementCostTable_f7a32475-32a1-48f9-873e-fede0c130395" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_6107f14b-5e6a-4490-a2b0-05fabc3be4d6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_6107f14b-5e6a-4490-a2b0-05fabc3be4d6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_6107f14b-5e6a-4490-a2b0-05fabc3be4d6" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_6107f14b-5e6a-4490-a2b0-05fabc3be4d6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_dd80c750-5c08-403f-a846-0d7ae1b9ee9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_6107f14b-5e6a-4490-a2b0-05fabc3be4d6" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_dd80c750-5c08-403f-a846-0d7ae1b9ee9c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a6e17948-8d02-432c-9ea9-1fada1f7b6ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_dd80c750-5c08-403f-a846-0d7ae1b9ee9c" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a6e17948-8d02-432c-9ea9-1fada1f7b6ef" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails" xlink:type="extended" id="id27fcf2353bd4db58e1b500c167a3ef7_PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_a7087675-c63c-47f2-95ae-9af6df478e02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_a7087675-c63c-47f2-95ae-9af6df478e02" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_83cf403d-6a38-4003-9e28-ce30c62467ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_83cf403d-6a38-4003-9e28-ce30c62467ca" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_3ee8506f-87fc-44c9-bf6c-0f384d33fe90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_3ee8506f-87fc-44c9-bf6c-0f384d33fe90" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_c70a2a32-c361-411c-b741-4f713dc6c154" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_c70a2a32-c361-411c-b741-4f713dc6c154" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_c039019c-5796-463c-b374-d42e363f2779" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_c039019c-5796-463c-b374-d42e363f2779" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_0b63b22d-49f6-4d41-9823-5007f886e2a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_0b63b22d-49f6-4d41-9823-5007f886e2a2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_20209266-98b7-465e-b00a-73757128be70" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_20209266-98b7-465e-b00a-73757128be70" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_055f1a78-9530-472d-80c9-6d947f603065" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_20209266-98b7-465e-b00a-73757128be70" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_055f1a78-9530-472d-80c9-6d947f603065" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_055f1a78-9530-472d-80c9-6d947f603065_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_055f1a78-9530-472d-80c9-6d947f603065" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_055f1a78-9530-472d-80c9-6d947f603065_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_0fbf1e78-41de-4a2d-9618-fa8119674d10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_055f1a78-9530-472d-80c9-6d947f603065" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_0fbf1e78-41de-4a2d-9618-fa8119674d10" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_c4969c9c-bd32-4c24-a839-7b1f92ac7e47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_0fbf1e78-41de-4a2d-9618-fa8119674d10" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_c4969c9c-bd32-4c24-a839-7b1f92ac7e47" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AccumulatedOtherComprehensiveIncomeLossDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails" xlink:type="extended" id="i353d7afe633e4da79e39093f8403e467_AccumulatedOtherComprehensiveIncomeLossDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_c19d6214-ebba-4374-b4e4-678b2ad74c8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_c19d6214-ebba-4374-b4e4-678b2ad74c8a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeTax_1354f774-68dc-4ae5-b6ce-42e993101d71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeTax_1354f774-68dc-4ae5-b6ce-42e993101d71" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_daf03a11-49c9-46f6-b1df-42f89dc5c11c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossTaxAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax_a5376b12-991f-4f61-b885-71ca73500feb" xlink:href="rock-20221231.xsd#rock_AccumulatedOtherComprehensiveIncomeLossTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:to="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax_a5376b12-991f-4f61-b885-71ca73500feb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossTax_fa5a5a08-302d-4385-9bd2-b49a0070b4f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossTax_fa5a5a08-302d-4385-9bd2-b49a0070b4f1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax_6208530f-604e-4b37-95cd-e766fcc1aead" xlink:href="rock-20221231.xsd#rock_AccumulatedOtherComprehensiveIncomeLossTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AOCIAttributableToParentNetOfTaxRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_2aa4956f-fba4-468b-9b69-3dfdc585e0da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_2aa4956f-fba4-468b-9b69-3dfdc585e0da" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax_094354aa-2077-4a9f-94aa-697bc21b46da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax_094354aa-2077-4a9f-94aa-697bc21b46da" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_40273f78-c348-4d2e-b6a7-b8b90a7e9885" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_40273f78-c348-4d2e-b6a7-b8b90a7e9885" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_4da34447-3625-4900-9f69-eabfeb27326a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_9db56998-6ee3-406c-b22d-8b17c991ef74" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_9db56998-6ee3-406c-b22d-8b17c991ef74" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_3faae202-fd41-4bbc-a142-20e3afbe5f2e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_9db56998-6ee3-406c-b22d-8b17c991ef74" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_3faae202-fd41-4bbc-a142-20e3afbe5f2e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_3faae202-fd41-4bbc-a142-20e3afbe5f2e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_3faae202-fd41-4bbc-a142-20e3afbe5f2e" xlink:to="loc_us-gaap_EquityComponentDomain_3faae202-fd41-4bbc-a142-20e3afbe5f2e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_3faae202-fd41-4bbc-a142-20e3afbe5f2e" xlink:to="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_a63c3b19-32ef-49b8-9d40-faa182b117a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedTranslationAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_a63c3b19-32ef-49b8-9d40-faa182b117a0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9aa86563-6269-4fcf-aaae-afc1a0f59657" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:to="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9aa86563-6269-4fcf-aaae-afc1a0f59657" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails" xlink:type="extended" id="i6ae5a793991b40339cab80711db6b12d_EquityBasedCompensationNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_5243439a-78e7-4736-8889-3203890b5e75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_5243439a-78e7-4736-8889-3203890b5e75" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_eca8d239-d506-4737-a642-56b4b6490be1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_eca8d239-d506-4737-a642-56b4b6490be1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_404c2f20-5b2c-4204-8a9b-0426aeced01e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_404c2f20-5b2c-4204-8a9b-0426aeced01e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_c20eb044-1123-4b63-9261-ff1cd8275b15" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_c20eb044-1123-4b63-9261-ff1cd8275b15" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_MarketPriceOfCommonStockPerShare_d3dfa9ab-9241-4e94-8f5d-841bff3273bd" xlink:href="rock-20221231.xsd#rock_MarketPriceOfCommonStockPerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_MarketPriceOfCommonStockPerShare_d3dfa9ab-9241-4e94-8f5d-841bff3273bd" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2457fedb-cf89-4ae3-8016-986f0d091d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2457fedb-cf89-4ae3-8016-986f0d091d27" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_224bb5ce-16f9-4bdf-a3e4-8046643bd8d7" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_224bb5ce-16f9-4bdf-a3e4-8046643bd8d7" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_e96382cb-6e13-4b41-a9ab-c8c827d47728" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_e96382cb-6e13-4b41-a9ab-c8c827d47728" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_33400728-1ff3-4ffe-a5a7-613c56a81eb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_33400728-1ff3-4ffe-a5a7-613c56a81eb4" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_35dc1491-fa1d-415b-a6a1-a72d1ae57757" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_35dc1491-fa1d-415b-a6a1-a72d1ae57757" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d8312938-8c4e-4469-8c93-623b495f1925" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d8312938-8c4e-4469-8c93-623b495f1925" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedEquityBasedCompensation_e5861d8b-de89-474d-8d82-82056ccd09ba" xlink:href="rock-20221231.xsd#rock_AccruedEquityBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_AccruedEquityBasedCompensation_e5861d8b-de89-474d-8d82-82056ccd09ba" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod_94da6fb4-019a-465a-91a4-6714a0f7c704" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod_94da6fb4-019a-465a-91a4-6714a0f7c704" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_e94f16f3-6283-4054-a380-38683bfc9afe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_e94f16f3-6283-4054-a380-38683bfc9afe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_e94f16f3-6283-4054-a380-38683bfc9afe_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_e94f16f3-6283-4054-a380-38683bfc9afe" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_e94f16f3-6283-4054-a380-38683bfc9afe_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_e94f16f3-6283-4054-a380-38683bfc9afe" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedExpensesCurrentMember_8b011659-6f9f-4fde-9565-a46318e702f6" xlink:href="rock-20221231.xsd#rock_AccruedExpensesCurrentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:to="loc_rock_AccruedExpensesCurrentMember_8b011659-6f9f-4fde-9565-a46318e702f6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NonCurrentLiabilitiesMember_c9eb7293-0c24-4a43-b058-3bae7b1fcdde" xlink:href="rock-20221231.xsd#rock_NonCurrentLiabilitiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:to="loc_rock_NonCurrentLiabilitiesMember_c9eb7293-0c24-4a43-b058-3bae7b1fcdde" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_7e265536-3d72-4a2a-a60e-e71f801a675b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_PlanNameAxis_7e265536-3d72-4a2a-a60e-e71f801a675b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_7e265536-3d72-4a2a-a60e-e71f801a675b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_7e265536-3d72-4a2a-a60e-e71f801a675b" xlink:to="loc_us-gaap_PlanNameDomain_7e265536-3d72-4a2a-a60e-e71f801a675b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_7e265536-3d72-4a2a-a60e-e71f801a675b" xlink:to="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018PlanMember_ac86c29c-448c-42f4-84a8-e9f7772b9dee" xlink:href="rock-20221231.xsd#rock_A2018PlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_A2018PlanMember_ac86c29c-448c-42f4-84a8-e9f7772b9dee" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_0c8bb277-5152-4294-a1bd-0c98120ae016" xlink:href="rock-20221231.xsd#rock_TwoThousandEighteenEquityIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_0c8bb277-5152-4294-a1bd-0c98120ae016" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandFifteenEquityIncentivePlanMember_2c13aa6d-afdd-4c09-a860-e1c1d9c878bc" xlink:href="rock-20221231.xsd#rock_TwoThousandFifteenEquityIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_TwoThousandFifteenEquityIncentivePlanMember_2c13aa6d-afdd-4c09-a860-e1c1d9c878bc" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NonEmployeeDirectorsPlanMember_1a195846-e850-47ff-ad48-ac4c494310d4" xlink:href="rock-20221231.xsd#rock_NonEmployeeDirectorsPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_NonEmployeeDirectorsPlanMember_1a195846-e850-47ff-ad48-ac4c494310d4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanMember_da3a69c4-b7e9-48cb-b007-5b98f92148b9" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_ManagementStockPurchasePlanMember_da3a69c4-b7e9-48cb-b007-5b98f92148b9" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_cb745dea-44aa-41f6-b46c-0ca910f42569" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_AwardTypeAxis_cb745dea-44aa-41f6-b46c-0ca910f42569" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb745dea-44aa-41f6-b46c-0ca910f42569_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_cb745dea-44aa-41f6-b46c-0ca910f42569" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb745dea-44aa-41f6-b46c-0ca910f42569_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_cb745dea-44aa-41f6-b46c-0ca910f42569" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_a3ee839c-ff2e-4b96-836e-c7e5d0c043d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_us-gaap_CommonStockMember_a3ee839c-ff2e-4b96-836e-c7e5d0c043d7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_315dd519-3a99-464c-a75c-13baa488e3be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_us-gaap_PerformanceSharesMember_315dd519-3a99-464c-a75c-13baa488e3be" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PerformanceSharesMarketConditionMember_2f659f71-f531-492b-b605-5f3ca3b68abd" xlink:href="rock-20221231.xsd#rock_PerformanceSharesMarketConditionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_rock_PerformanceSharesMarketConditionMember_2f659f71-f531-492b-b605-5f3ca3b68abd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_0a18dcb9-14a8-42b3-9732-d08af4ccea84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_0a18dcb9-14a8-42b3-9732-d08af4ccea84" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_srt_RangeAxis_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb" xlink:to="loc_srt_RangeMember_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_6977145d-8403-4038-bd12-e73ce804a2da" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb" xlink:to="loc_srt_RangeMember_6977145d-8403-4038-bd12-e73ce804a2da" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_7211a493-8c30-4a88-8cb9-00aa56b48c17" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_6977145d-8403-4038-bd12-e73ce804a2da" xlink:to="loc_srt_MaximumMember_7211a493-8c30-4a88-8cb9-00aa56b48c17" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_a044c0a4-c9c9-46bf-a84d-6fc4021a560f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_a044c0a4-c9c9-46bf-a84d-6fc4021a560f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_a044c0a4-c9c9-46bf-a84d-6fc4021a560f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_a044c0a4-c9c9-46bf-a84d-6fc4021a560f" xlink:to="loc_us-gaap_EquityComponentDomain_a044c0a4-c9c9-46bf-a84d-6fc4021a560f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_6a6205bf-b145-4956-8367-172c1c940e72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_a044c0a4-c9c9-46bf-a84d-6fc4021a560f" xlink:to="loc_us-gaap_EquityComponentDomain_6a6205bf-b145-4956-8367-172c1c940e72" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanMember_8e20a804-9139-43d5-ac4c-8656b6f3fa9c" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6a6205bf-b145-4956-8367-172c1c940e72" xlink:to="loc_rock_ManagementStockPurchasePlanMember_8e20a804-9139-43d5-ac4c-8656b6f3fa9c" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails" xlink:type="extended" id="i85e0f058ab834cf9a28085c62e5c4ed6_EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_95b58087-216e-43bf-b176-3ed319c3505c" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderTerminatedPlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_95b58087-216e-43bf-b176-3ed319c3505c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_a3f29b86-ef7b-4c61-ada6-b91b1415e660" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_a3f29b86-ef7b-4c61-ada6-b91b1415e660" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_1b06cd91-a511-44a9-842c-a1eab4a2e8ad" xlink:href="rock-20221231.xsd#rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_1b06cd91-a511-44a9-842c-a1eab4a2e8ad" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_fb7d3976-ed0d-4cde-a142-337cbdd7d435" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_us-gaap_ShareBasedCompensation_fb7d3976-ed0d-4cde-a142-337cbdd7d435" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_b284bdb3-0ef7-48c1-9500-97c8dac97a3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_b284bdb3-0ef7-48c1-9500-97c8dac97a3e" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1ddf79eb-d6b2-49e4-904d-bfbdd8ce53fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1ddf79eb-d6b2-49e4-904d-bfbdd8ce53fa" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_b7b36312-f62a-46e2-9286-174bd6c33313" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1ddf79eb-d6b2-49e4-904d-bfbdd8ce53fa" xlink:to="loc_us-gaap_PlanNameAxis_b7b36312-f62a-46e2-9286-174bd6c33313" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_b7b36312-f62a-46e2-9286-174bd6c33313_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_b7b36312-f62a-46e2-9286-174bd6c33313" xlink:to="loc_us-gaap_PlanNameDomain_b7b36312-f62a-46e2-9286-174bd6c33313_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_b7b36312-f62a-46e2-9286-174bd6c33313" xlink:to="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2015PlanMember_2c2194e5-3871-48c2-ac68-db0153dc7939" xlink:href="rock-20221231.xsd#rock_A2015PlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:to="loc_rock_A2015PlanMember_2c2194e5-3871-48c2-ac68-db0153dc7939" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018PlanMember_06cb7f70-3bbb-4e77-8f3e-fc5cd9757024" xlink:href="rock-20221231.xsd#rock_A2018PlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:to="loc_rock_A2018PlanMember_06cb7f70-3bbb-4e77-8f3e-fc5cd9757024" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails" xlink:type="extended" id="ic0194ef46dc24ef5859864d0df823de1_EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cf8d70b7-60d8-451d-b125-c2727292c5de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cf8d70b7-60d8-451d-b125-c2727292c5de" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_1d12bcb9-5332-45e9-aeb9-b9d0a500ff11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_1d12bcb9-5332-45e9-aeb9-b9d0a500ff11" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateAxis_831ab7b3-d66c-47d7-877e-3c8d515d44bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:to="loc_us-gaap_AwardDateAxis_831ab7b3-d66c-47d7-877e-3c8d515d44bf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateDomain_831ab7b3-d66c-47d7-877e-3c8d515d44bf_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardDateAxis_831ab7b3-d66c-47d7-877e-3c8d515d44bf" xlink:to="loc_us-gaap_AwardDateDomain_831ab7b3-d66c-47d7-877e-3c8d515d44bf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardDateAxis_831ab7b3-d66c-47d7-877e-3c8d515d44bf" xlink:to="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019Member_e6f200db-85d7-4ba7-b60a-d42963ca9174" xlink:href="rock-20221231.xsd#rock_A2019Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:to="loc_rock_A2019Member_e6f200db-85d7-4ba7-b60a-d42963ca9174" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018Member_72419b3b-2c50-41d9-99df-665488d54c86" xlink:href="rock-20221231.xsd#rock_A2018Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:to="loc_rock_A2018Member_72419b3b-2c50-41d9-99df-665488d54c86" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2017Member_0fd77bae-8329-49a6-9bab-1723b3c7b840" xlink:href="rock-20221231.xsd#rock_A2017Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:to="loc_rock_A2017Member_0fd77bae-8329-49a6-9bab-1723b3c7b840" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_de4d7c69-729b-4f5d-8e91-4f302a7d3eda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:to="loc_us-gaap_AwardTypeAxis_de4d7c69-729b-4f5d-8e91-4f302a7d3eda" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_de4d7c69-729b-4f5d-8e91-4f302a7d3eda_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_de4d7c69-729b-4f5d-8e91-4f302a7d3eda" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_de4d7c69-729b-4f5d-8e91-4f302a7d3eda_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_de4d7c69-729b-4f5d-8e91-4f302a7d3eda" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredStockUnitsMember_65a61282-b597-45da-9513-4a782f0b483a" xlink:href="rock-20221231.xsd#rock_DeferredStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_rock_DeferredStockUnitsMember_65a61282-b597-45da-9513-4a782f0b483a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_6afacd64-d8e5-4d7c-9cb5-584c0c948104" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_us-gaap_RestrictedStockMember_6afacd64-d8e5-4d7c-9cb5-584c0c948104" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_6d5032cc-90e5-4056-86b5-6026ba033fcb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_6d5032cc-90e5-4056-86b5-6026ba033fcb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_20bc4400-0ca7-48de-af6b-fb5e7dd62ec9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_us-gaap_PerformanceSharesMember_20bc4400-0ca7-48de-af6b-fb5e7dd62ec9" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails" xlink:type="extended" id="ie86b44e22e024d75824bd676d6d93a84_EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_296eba3e-8b30-4b94-bdc7-9efbe8473896" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_296eba3e-8b30-4b94-bdc7-9efbe8473896" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_64caf43e-d0f2-41ee-85de-df581967d7b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_64caf43e-d0f2-41ee-85de-df581967d7b8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_96623dbc-628a-445b-b7d3-3b9de927edc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_96623dbc-628a-445b-b7d3-3b9de927edc4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_294004ad-e848-4f08-b085-bdd9ab66823b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_294004ad-e848-4f08-b085-bdd9ab66823b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_47f9b62f-38f7-4f88-9144-d3d3bb0cfbfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_47f9b62f-38f7-4f88-9144-d3d3bb0cfbfa" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7007185a-64d5-4f74-8eb8-6799f870ab23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7007185a-64d5-4f74-8eb8-6799f870ab23" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ba074ed7-f124-4a99-9574-a5146cb8224d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ba074ed7-f124-4a99-9574-a5146cb8224d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_a48625d2-96d8-48c1-b0fe-3758a660451d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ba074ed7-f124-4a99-9574-a5146cb8224d" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_a48625d2-96d8-48c1-b0fe-3758a660451d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_a48625d2-96d8-48c1-b0fe-3758a660451d_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_a48625d2-96d8-48c1-b0fe-3758a660451d" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_a48625d2-96d8-48c1-b0fe-3758a660451d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_67ff3373-a2bc-415b-928e-8e69503e138a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_a48625d2-96d8-48c1-b0fe-3758a660451d" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_67ff3373-a2bc-415b-928e-8e69503e138a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ExercisePriceRangeOneMember_80e62582-1e30-4123-824a-d947694c2645" xlink:href="rock-20221231.xsd#rock_ExercisePriceRangeOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_67ff3373-a2bc-415b-928e-8e69503e138a" xlink:to="loc_rock_ExercisePriceRangeOneMember_80e62582-1e30-4123-824a-d947694c2645" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails" xlink:type="extended" id="i040a7601f3b340ef81a54a3332a251d3_EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2d2050e0-beeb-4176-b5a5-d3c87061dac1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2d2050e0-beeb-4176-b5a5-d3c87061dac1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_b3a0a1d5-35e6-44b0-baae-1eba13362e5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_b3a0a1d5-35e6-44b0-baae-1eba13362e5c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod_9fa164c7-2f7b-41ef-aff2-604470f140bc" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod_9fa164c7-2f7b-41ef-aff2-604470f140bc" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_e600a0f6-3562-453a-aa0d-434bf4cfb0b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_e600a0f6-3562-453a-aa0d-434bf4cfb0b5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_bb4a359f-f176-4f94-8988-5b8127bde873" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_bb4a359f-f176-4f94-8988-5b8127bde873" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_c9d58047-a556-45d5-8017-5674ea33225c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_3023e1bb-f6b3-4d94-9967-c375912c27ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_3023e1bb-f6b3-4d94-9967-c375912c27ba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_4464609f-fc85-43b7-a359-0d0f3c5cb60d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_4464609f-fc85-43b7-a359-0d0f3c5cb60d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue_f2bffd4f-cc51-4547-8989-8c9e4dfe1024" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue_f2bffd4f-cc51-4547-8989-8c9e4dfe1024" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8b043b0c-2e8c-4d58-87b7-b259dae5ab14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8b043b0c-2e8c-4d58-87b7-b259dae5ab14" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_4b8999f2-635d-44fc-a3f3-adcba354a739" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_4b8999f2-635d-44fc-a3f3-adcba354a739" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_71604e2b-9fc4-42a6-b0c4-e4c810c96558" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent_a4f1f978-c0e2-4131-8b6f-6599253ba3ab" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent_a4f1f978-c0e2-4131-8b6f-6599253ba3ab" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_7177ac10-29c2-4d4d-a4d5-716f84181dec" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_7177ac10-29c2-4d4d-a4d5-716f84181dec" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved_f1ae19fb-4a92-4b87-aeda-51db185063db" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved_f1ae19fb-4a92-4b87-aeda-51db185063db" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_us-gaap_PlanNameAxis_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0" xlink:to="loc_us-gaap_PlanNameDomain_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0" xlink:to="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_2a0e06b8-df0d-4965-b107-3fd58a40f891" xlink:href="rock-20221231.xsd#rock_TwoThousandEighteenEquityIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:to="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_2a0e06b8-df0d-4965-b107-3fd58a40f891" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018PlanMember_8b1e2bb8-26a7-4df2-84c2-82cadbcb9ed4" xlink:href="rock-20221231.xsd#rock_A2018PlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:to="loc_rock_A2018PlanMember_8b1e2bb8-26a7-4df2-84c2-82cadbcb9ed4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MeasurementInputTypeAxis_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_us-gaap_MeasurementInputTypeAxis_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MeasurementInputTypeDomain_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_MeasurementInputTypeAxis_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55" xlink:to="loc_us-gaap_MeasurementInputTypeDomain_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_MeasurementInputTypeAxis_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55" xlink:to="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember_bca7d5ce-e14a-42d6-9f12-b134bc58ab7d" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:to="loc_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember_bca7d5ce-e14a-42d6-9f12-b134bc58ab7d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember_fb75956f-ea79-4bcc-a5bf-44ed4d1e72bb" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementGrossProfitThresholdMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:to="loc_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember_fb75956f-ea79-4bcc-a5bf-44ed4d1e72bb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember_e770bfd4-3088-4fcd-8c92-f6b17f0e63fb" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementTotalShareholderReturnMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:to="loc_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember_e770bfd4-3088-4fcd-8c92-f6b17f0e63fb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_5fbb6ebf-d140-48e4-a283-2d6d911706c7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_srt_RangeAxis_5fbb6ebf-d140-48e4-a283-2d6d911706c7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_5fbb6ebf-d140-48e4-a283-2d6d911706c7_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_5fbb6ebf-d140-48e4-a283-2d6d911706c7" xlink:to="loc_srt_RangeMember_5fbb6ebf-d140-48e4-a283-2d6d911706c7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_5fbb6ebf-d140-48e4-a283-2d6d911706c7" xlink:to="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_14b60f7a-30ce-44bb-96aa-6e54047ef761" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:to="loc_srt_MinimumMember_14b60f7a-30ce-44bb-96aa-6e54047ef761" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_c13c5679-bb5e-4de6-a95b-a3beb4ac6890" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:to="loc_srt_MaximumMember_c13c5679-bb5e-4de6-a95b-a3beb4ac6890" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_06159af6-d0c5-49a4-9d6b-e9d749116643" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_us-gaap_AwardTypeAxis_06159af6-d0c5-49a4-9d6b-e9d749116643" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_06159af6-d0c5-49a4-9d6b-e9d749116643_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_06159af6-d0c5-49a4-9d6b-e9d749116643" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_06159af6-d0c5-49a4-9d6b-e9d749116643_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_06159af6-d0c5-49a4-9d6b-e9d749116643" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_afe60064-0cc6-435b-81a4-d21028cbd3f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_afe60064-0cc6-435b-81a4-d21028cbd3f5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_19b05e06-a4d6-4efe-8c3d-0f68f7f75885" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_us-gaap_RestrictedStockMember_19b05e06-a4d6-4efe-8c3d-0f68f7f75885" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_ffdee445-c25f-4ff8-b4e4-17a0eb49cbae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_us-gaap_PerformanceSharesMember_ffdee445-c25f-4ff8-b4e4-17a0eb49cbae" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredStockUnitsMember_48f6f5f1-3b2b-4275-a05f-79b760d4f645" xlink:href="rock-20221231.xsd#rock_DeferredStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_rock_DeferredStockUnitsMember_48f6f5f1-3b2b-4275-a05f-79b760d4f645" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails" xlink:type="extended" id="i4ecae8ccd0c1486092463e9b051be807_EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_b206dec3-5b8f-420e-a35f-4c32f209878a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_b206dec3-5b8f-420e-a35f-4c32f209878a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_49c7466a-3a6a-4c2e-8ef6-af8147f5d7e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_49c7466a-3a6a-4c2e-8ef6-af8147f5d7e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_121d4a7c-cd27-46b1-9058-bf3fc0dfb5d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_121d4a7c-cd27-46b1-9058-bf3fc0dfb5d7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_27853d54-b982-45e5-a251-6e95fabb7081" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_121d4a7c-cd27-46b1-9058-bf3fc0dfb5d7" xlink:to="loc_us-gaap_AwardTypeAxis_27853d54-b982-45e5-a251-6e95fabb7081" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_27853d54-b982-45e5-a251-6e95fabb7081_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_27853d54-b982-45e5-a251-6e95fabb7081" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_27853d54-b982-45e5-a251-6e95fabb7081_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_27853d54-b982-45e5-a251-6e95fabb7081" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_592118d5-b60b-4340-a2a2-78c08bcdc3a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_592118d5-b60b-4340-a2a2-78c08bcdc3a1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_a2164a8b-2e29-47b7-a076-061e69c1fb35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_us-gaap_RestrictedStockMember_a2164a8b-2e29-47b7-a076-061e69c1fb35" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PerformanceStockUnitsMember_8cfe7154-b909-4e7f-8cb7-beaddce77a46" xlink:href="rock-20221231.xsd#rock_PerformanceStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_rock_PerformanceStockUnitsMember_8cfe7154-b909-4e7f-8cb7-beaddce77a46" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredStockUnitsMember_b710088e-6681-43d5-8dca-d552b8ac04b7" xlink:href="rock-20221231.xsd#rock_DeferredStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_rock_DeferredStockUnitsMember_b710088e-6681-43d5-8dca-d552b8ac04b7" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails" xlink:type="extended" id="i22f48b095ae6489cbd4885bb9ab484db_EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_3fdb2dd1-d336-4c9f-b1c7-717b7c345cf4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_3fdb2dd1-d336-4c9f-b1c7-717b7c345cf4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_560551ab-6a08-415f-9535-8d751bcf7969" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_560551ab-6a08-415f-9535-8d751bcf7969" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid_4daacc24-c522-4b32-8f50-5df9d002b5d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid_4daacc24-c522-4b32-8f50-5df9d002b5d8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanCompensationExpense_ac3e354b-204d-4303-9d2c-6c302dbb5722" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_rock_ManagementStockPurchasePlanCompensationExpense_ac3e354b-204d-4303-9d2c-6c302dbb5722" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualAxis_8fce3e29-c2fc-4cc1-b708-c73afd2b355e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:to="loc_srt_TitleOfIndividualAxis_8fce3e29-c2fc-4cc1-b708-c73afd2b355e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8fce3e29-c2fc-4cc1-b708-c73afd2b355e_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_8fce3e29-c2fc-4cc1-b708-c73afd2b355e" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8fce3e29-c2fc-4cc1-b708-c73afd2b355e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bb79988e-dd37-4491-9f99-947918998ccc" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_8fce3e29-c2fc-4cc1-b708-c73afd2b355e" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bb79988e-dd37-4491-9f99-947918998ccc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ManagementMember_88abafa5-4277-426d-90a3-031b5cf531b1" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ManagementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bb79988e-dd37-4491-9f99-947918998ccc" xlink:to="loc_srt_ManagementMember_88abafa5-4277-426d-90a3-031b5cf531b1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_0f357616-a6da-4809-b9b7-37d6e4dcf34d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:to="loc_us-gaap_AwardTypeAxis_0f357616-a6da-4809-b9b7-37d6e4dcf34d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0f357616-a6da-4809-b9b7-37d6e4dcf34d_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_0f357616-a6da-4809-b9b7-37d6e4dcf34d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0f357616-a6da-4809-b9b7-37d6e4dcf34d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6930a4d6-4a32-4291-bc34-7aee369dad82" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_0f357616-a6da-4809-b9b7-37d6e4dcf34d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6930a4d6-4a32-4291-bc34-7aee369dad82" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_83495402-37f8-4bf1-8548-c9d5a98da716" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6930a4d6-4a32-4291-bc34-7aee369dad82" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_83495402-37f8-4bf1-8548-c9d5a98da716" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_8f24114b-3d0d-4673-a36d-49ca79c12830" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_8f24114b-3d0d-4673-a36d-49ca79c12830" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_8f24114b-3d0d-4673-a36d-49ca79c12830_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8f24114b-3d0d-4673-a36d-49ca79c12830" xlink:to="loc_us-gaap_EquityComponentDomain_8f24114b-3d0d-4673-a36d-49ca79c12830_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_de4529e1-6444-4de4-a73c-e4ece70cb0cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8f24114b-3d0d-4673-a36d-49ca79c12830" xlink:to="loc_us-gaap_EquityComponentDomain_de4529e1-6444-4de4-a73c-e4ece70cb0cf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanMember_5bb36e58-4533-4762-943b-36e1fbd7c87b" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_de4529e1-6444-4de4-a73c-e4ece70cb0cf" xlink:to="loc_rock_ManagementStockPurchasePlanMember_5bb36e58-4533-4762-943b-36e1fbd7c87b" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#FairValueMeasurementsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails" xlink:type="extended" id="i080e4979f502454b81fd066c7d2551e8_FairValueMeasurementsNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ExtinguishmentOfDebtLineItems_cb93d480-983a-44b8-b91e-2767bee75920" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ExtinguishmentOfDebtLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_37842c5f-06c0-43d2-b5df-8f110024c6d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ExtinguishmentOfDebtLineItems_cb93d480-983a-44b8-b91e-2767bee75920" xlink:to="loc_us-gaap_LongTermDebt_37842c5f-06c0-43d2-b5df-8f110024c6d3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfExtinguishmentOfDebtTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ExtinguishmentOfDebtLineItems_cb93d480-983a-44b8-b91e-2767bee75920" xlink:to="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_60853d9a-6931-43d0-a023-b7d08935959f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:to="loc_us-gaap_CreditFacilityAxis_60853d9a-6931-43d0-a023-b7d08935959f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_60853d9a-6931-43d0-a023-b7d08935959f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_60853d9a-6931-43d0-a023-b7d08935959f" xlink:to="loc_us-gaap_CreditFacilityDomain_60853d9a-6931-43d0-a023-b7d08935959f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_c5fd0a6f-fcc2-413c-8f23-021946ccbb89" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_60853d9a-6931-43d0-a023-b7d08935959f" xlink:to="loc_us-gaap_CreditFacilityDomain_c5fd0a6f-fcc2-413c-8f23-021946ccbb89" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_b5af7fc0-54e6-4378-a1de-08411d6e0152" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_c5fd0a6f-fcc2-413c-8f23-021946ccbb89" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_b5af7fc0-54e6-4378-a1de-08411d6e0152" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_a40c0fc9-e286-4650-93da-58dc71f0dbb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:to="loc_us-gaap_DebtInstrumentAxis_a40c0fc9-e286-4650-93da-58dc71f0dbb5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_a40c0fc9-e286-4650-93da-58dc71f0dbb5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_a40c0fc9-e286-4650-93da-58dc71f0dbb5" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_a40c0fc9-e286-4650-93da-58dc71f0dbb5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_063ba03e-56ef-4428-a4ef-200e0279f3a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_a40c0fc9-e286-4650-93da-58dc71f0dbb5" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_063ba03e-56ef-4428-a4ef-200e0279f3a4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SeniorCreditAgreementMember_00f10abb-f22a-44cd-94e4-ae9e47dc460f" xlink:href="rock-20221231.xsd#rock_SeniorCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_063ba03e-56ef-4428-a4ef-200e0279f3a4" xlink:to="loc_rock_SeniorCreditAgreementMember_00f10abb-f22a-44cd-94e4-ae9e47dc460f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsScheduleofDisposalGroupDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails" xlink:type="extended" id="i1bedf023290e4bea8f6ecdcded992a19_DiscontinuedOperationsScheduleofDisposalGroupDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_ee925193-0b2b-415b-9898-754ec98d7838" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_ee925193-0b2b-415b-9898-754ec98d7838" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_3c995f78-4ba8-4cc3-b2dd-27c2f407ef1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_3c995f78-4ba8-4cc3-b2dd-27c2f407ef1f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_1f0205ac-77fb-48e6-b47f-7e09a9b9eb60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_1f0205ac-77fb-48e6-b47f-7e09a9b9eb60" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_61c407a1-3110-4188-b325-b85f47937a9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_61c407a1-3110-4188-b325-b85f47937a9e" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_531a9485-b9c2-45ff-b520-0e9facd7cce7" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_531a9485-b9c2-45ff-b520-0e9facd7cce7" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_cf05827d-4e38-4377-a01c-c48188adc6e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_cf05827d-4e38-4377-a01c-c48188adc6e8" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_a5a34d8d-acf1-4e8a-841a-9d16db14ae71" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_a5a34d8d-acf1-4e8a-841a-9d16db14ae71" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_5c27087c-58af-4dd7-823f-929262efa7c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_5c27087c-58af-4dd7-823f-929262efa7c8" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_de4dfde7-0f24-4575-857a-3627446606d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_de4dfde7-0f24-4575-857a-3627446606d7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_f0952933-37af-49dd-bebd-4efde1c64b13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_f0952933-37af-49dd-bebd-4efde1c64b13" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_c32a5a7a-c53b-4fee-a450-6bd9c2d08d2f" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_c32a5a7a-c53b-4fee-a450-6bd9c2d08d2f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_30be1ab5-cb18-4f25-b699-420a9f60bc23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_30be1ab5-cb18-4f25-b699-420a9f60bc23" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_b7a7f924-4a95-4e17-ade0-5594dfd49106" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_b7a7f924-4a95-4e17-ade0-5594dfd49106" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_b7a7f924-4a95-4e17-ade0-5594dfd49106_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_b7a7f924-4a95-4e17-ade0-5594dfd49106" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_b7a7f924-4a95-4e17-ade0-5594dfd49106_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_15ce24c4-db2a-400f-83d4-1f6d4c2fda1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_b7a7f924-4a95-4e17-ade0-5594dfd49106" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_15ce24c4-db2a-400f-83d4-1f6d4c2fda1d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_f1c04efa-5eb5-44af-9298-c39287d4dffd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_15ce24c4-db2a-400f-83d4-1f6d4c2fda1d" xlink:to="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_f1c04efa-5eb5-44af-9298-c39287d4dffd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_f85e5421-4f87-4c6b-86bb-5ba9085412a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_f85e5421-4f87-4c6b-86bb-5ba9085412a0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_f85e5421-4f87-4c6b-86bb-5ba9085412a0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_f85e5421-4f87-4c6b-86bb-5ba9085412a0" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_f85e5421-4f87-4c6b-86bb-5ba9085412a0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e07a610b-f695-45f9-afec-2dba7e84fe08" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_f85e5421-4f87-4c6b-86bb-5ba9085412a0" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e07a610b-f695-45f9-afec-2dba7e84fe08" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ProcessingBusinessMember_b3983ca1-93ba-452e-b666-20b05224c1f2" xlink:href="rock-20221231.xsd#rock_ProcessingBusinessMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e07a610b-f695-45f9-afec-2dba7e84fe08" xlink:to="loc_rock_ProcessingBusinessMember_b3983ca1-93ba-452e-b666-20b05224c1f2" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails" xlink:type="extended" id="i43b289c45c6b414b8442057dfa623618_DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_a8571ca8-d2e7-4e2a-b98e-4bd14fb61c69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_a8571ca8-d2e7-4e2a-b98e-4bd14fb61c69" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_069cefde-abb9-421f-9c66-c964586d0f89" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_069cefde-abb9-421f-9c66-c964586d0f89" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_b93b2422-b418-4719-bea5-0ef10ee6d52b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_b93b2422-b418-4719-bea5-0ef10ee6d52b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_b93b2422-b418-4719-bea5-0ef10ee6d52b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_b93b2422-b418-4719-bea5-0ef10ee6d52b" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_b93b2422-b418-4719-bea5-0ef10ee6d52b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_901d01b3-573e-4ec9-af3d-8b164b1d83d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_b93b2422-b418-4719-bea5-0ef10ee6d52b" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_901d01b3-573e-4ec9-af3d-8b164b1d83d5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ProcessingBusinessMember_efba700e-77cf-40f5-9fc8-5a7142612881" xlink:href="rock-20221231.xsd#rock_ProcessingBusinessMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_901d01b3-573e-4ec9-af3d-8b164b1d83d5" xlink:to="loc_rock_ProcessingBusinessMember_efba700e-77cf-40f5-9fc8-5a7142612881" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_41f4ebc1-9003-4359-b2cd-6f6456633a67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_41f4ebc1-9003-4359-b2cd-6f6456633a67" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_41f4ebc1-9003-4359-b2cd-6f6456633a67_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_41f4ebc1-9003-4359-b2cd-6f6456633a67" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_41f4ebc1-9003-4359-b2cd-6f6456633a67_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_b827de67-ce84-4094-aa4a-4393ca0c660f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_41f4ebc1-9003-4359-b2cd-6f6456633a67" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_b827de67-ce84-4094-aa4a-4393ca0c660f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_68bf39ec-1f8f-478c-a79e-41c28c4e11b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_b827de67-ce84-4094-aa4a-4393ca0c660f" xlink:to="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_68bf39ec-1f8f-478c-a79e-41c28c4e11b9" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails" xlink:type="extended" id="iccbfd4fa178543a3a638b87cfd11e892_DiscontinuedOperationsNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_b82f2464-7c59-4654-bc57-9165072a0596" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_b82f2464-7c59-4654-bc57-9165072a0596" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_3fd1b41e-a2bd-4237-a027-b21623545515" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_3fd1b41e-a2bd-4237-a027-b21623545515" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1_289f0dd4-4214-4bcb-8578-74b00590501e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1_289f0dd4-4214-4bcb-8578-74b00590501e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax_613237a4-bf44-42bb-95a4-ded6e46aaff3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax_613237a4-bf44-42bb-95a4-ded6e46aaff3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_e654790c-5d35-4714-a8ba-c4e4374024f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_e654790c-5d35-4714-a8ba-c4e4374024f5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_061cc739-9dbc-44a6-841e-0618a9d38e5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_061cc739-9dbc-44a6-841e-0618a9d38e5d" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_9c92ca8d-32bb-4d6e-8fb1-1b52eb6a7f36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_9c92ca8d-32bb-4d6e-8fb1-1b52eb6a7f36" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_e38cc89b-c5d4-48d6-a3f8-fefa01f9d81d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:to="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_e38cc89b-c5d4-48d6-a3f8-fefa01f9d81d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndustrialBusinessSegmentMember_7c073f03-ae24-41fb-9f1a-7923a0efd98b" xlink:href="rock-20221231.xsd#rock_IndustrialBusinessSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:to="loc_rock_IndustrialBusinessSegmentMember_7c073f03-ae24-41fb-9f1a-7923a0efd98b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApartmentTourApplicationBusinessMember_6619710a-2c28-4918-8210-6760e07dd8fb" xlink:href="rock-20221231.xsd#rock_ApartmentTourApplicationBusinessMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:to="loc_rock_ApartmentTourApplicationBusinessMember_6619710a-2c28-4918-8210-6760e07dd8fb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ProcessingBusinessMember_d0c8d30c-a873-42ac-8ec1-ea48e509f6b4" xlink:href="rock-20221231.xsd#rock_ProcessingBusinessMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:to="loc_rock_ProcessingBusinessMember_d0c8d30c-a873-42ac-8ec1-ea48e509f6b4" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails" xlink:type="extended" id="ib1cdc8ff78c049b8b2bb41d261126bb4_DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ec357813-52e1-4711-8cc8-813b46fc80d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ec357813-52e1-4711-8cc8-813b46fc80d8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_25a209df-5e62-4f83-b241-f31dbc094bcf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_25a209df-5e62-4f83-b241-f31dbc094bcf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_9d18d27a-654c-4cdd-a2ab-aef7e3f4ab30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_9d18d27a-654c-4cdd-a2ab-aef7e3f4ab30" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_44472ae7-73a7-496e-ab54-b45e6389631b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_44472ae7-73a7-496e-ab54-b45e6389631b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_fb4088da-e272-4021-aeee-b1ba10e0aaf5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_fb4088da-e272-4021-aeee-b1ba10e0aaf5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_eecf70a1-0f76-405d-99f8-948d23e4b0ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_eecf70a1-0f76-405d-99f8-948d23e4b0ec" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_eecf70a1-0f76-405d-99f8-948d23e4b0ec_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_eecf70a1-0f76-405d-99f8-948d23e4b0ec" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_eecf70a1-0f76-405d-99f8-948d23e4b0ec_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_889e4a8e-3f1b-46f3-a3f5-55c5381c951d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_eecf70a1-0f76-405d-99f8-948d23e4b0ec" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_889e4a8e-3f1b-46f3-a3f5-55c5381c951d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_8985f5bb-e518-4e16-9899-84cffb3f5572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_889e4a8e-3f1b-46f3-a3f5-55c5381c951d" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_8985f5bb-e518-4e16-9899-84cffb3f5572" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_e3b9248d-86ab-4665-9013-18c71dc8f262" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_e3b9248d-86ab-4665-9013-18c71dc8f262" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e3b9248d-86ab-4665-9013-18c71dc8f262_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_e3b9248d-86ab-4665-9013-18c71dc8f262" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e3b9248d-86ab-4665-9013-18c71dc8f262_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_21c62b5e-d650-4205-8c89-f875a63a9933" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_e3b9248d-86ab-4665-9013-18c71dc8f262" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_21c62b5e-d650-4205-8c89-f875a63a9933" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndustrialBusinessSegmentMember_7402f6dc-58a4-4bec-b6c7-9aa1ef727200" xlink:href="rock-20221231.xsd#rock_IndustrialBusinessSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_21c62b5e-d650-4205-8c89-f875a63a9933" xlink:to="loc_rock_IndustrialBusinessSegmentMember_7402f6dc-58a4-4bec-b6c7-9aa1ef727200" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails" xlink:type="extended" id="ib912d3c2c0d248c1afe31b556e6cba61_ExitActivityCostsandAssetImpairmentsNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed_f3625c58-0ead-4745-918c-347440ef1c4d" xlink:href="rock-20221231.xsd#rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:to="loc_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed_f3625c58-0ead-4745-918c-347440ef1c4d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_a5d88eeb-0103-4dc3-856b-47819db4e8f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_a5d88eeb-0103-4dc3-856b-47819db4e8f5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_cf09f20b-438f-4282-9924-e344d281a572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_cf09f20b-438f-4282-9924-e344d281a572" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_d2ccfbde-7719-4ebf-97bc-84af6f24e8b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_d2ccfbde-7719-4ebf-97bc-84af6f24e8b8" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_6f1f1a57-dd09-4a81-a64c-9040da2c5903" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_d2ccfbde-7719-4ebf-97bc-84af6f24e8b8" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_6f1f1a57-dd09-4a81-a64c-9040da2c5903" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6f1f1a57-dd09-4a81-a64c-9040da2c5903_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_6f1f1a57-dd09-4a81-a64c-9040da2c5903" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6f1f1a57-dd09-4a81-a64c-9040da2c5903_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_419a79be-6328-44a5-bfa2-4c081fa42a64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_6f1f1a57-dd09-4a81-a64c-9040da2c5903" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_419a79be-6328-44a5-bfa2-4c081fa42a64" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApartmentTourApplicationBusinessMember_04d9614d-dba4-4040-ab7b-fa906213ab5f" xlink:href="rock-20221231.xsd#rock_ApartmentTourApplicationBusinessMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_419a79be-6328-44a5-bfa2-4c081fa42a64" xlink:to="loc_rock_ApartmentTourApplicationBusinessMember_04d9614d-dba4-4040-ab7b-fa906213ab5f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails" xlink:type="extended" id="i8f8124cc84b84954a4e2739dd89d8ad6_ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessExitCosts1_81346a50-3c31-4a5c-b4c1-9fe6e711c66a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessExitCosts1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:to="loc_us-gaap_BusinessExitCosts1_81346a50-3c31-4a5c-b4c1-9fe6e711c66a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringSettlementAndImpairmentProvisions_ca66077c-4031-4be4-b0c3-e59c79879906" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringSettlementAndImpairmentProvisions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:to="loc_us-gaap_RestructuringSettlementAndImpairmentProvisions_ca66077c-4031-4be4-b0c3-e59c79879906" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCharges_141b7baa-6be6-4548-9e57-fac2553e200f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCharges"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:to="loc_us-gaap_RestructuringCharges_141b7baa-6be6-4548-9e57-fac2553e200f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_e3674688-fd36-48f8-bfd3-77d1022ca216" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_e3674688-fd36-48f8-bfd3-77d1022ca216" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_e3674688-fd36-48f8-bfd3-77d1022ca216_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_e3674688-fd36-48f8-bfd3-77d1022ca216" xlink:to="loc_us-gaap_SegmentDomain_e3674688-fd36-48f8-bfd3-77d1022ca216_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_e3674688-fd36-48f8-bfd3-77d1022ca216" xlink:to="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_daee118f-d185-4123-88a4-8aa2aa78bf96" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_RenewablesMember_daee118f-d185-4123-88a4-8aa2aa78bf96" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_8bfff47f-7b11-4acd-a612-ea7f6b7993f2" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_ResidentialMember_8bfff47f-7b11-4acd-a612-ea7f6b7993f2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_97cbfca1-d745-436b-b4a2-da9d5c191a00" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_InfrastructureMember_97cbfca1-d745-436b-b4a2-da9d5c191a00" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_63ac6ba1-4a98-4516-bb2c-46631a65f19e" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_AgtechMember_63ac6ba1-4a98-4516-bb2c-46631a65f19e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_8508295e-6a5d-4478-b636-599d73acf13a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:to="loc_srt_ConsolidationItemsAxis_8508295e-6a5d-4478-b636-599d73acf13a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_8508295e-6a5d-4478-b636-599d73acf13a_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_8508295e-6a5d-4478-b636-599d73acf13a" xlink:to="loc_srt_ConsolidationItemsDomain_8508295e-6a5d-4478-b636-599d73acf13a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_8508295e-6a5d-4478-b636-599d73acf13a" xlink:to="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_073b3654-2835-4665-b4cb-db7192017928" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:to="loc_us-gaap_OperatingSegmentsMember_073b3654-2835-4665-b4cb-db7192017928" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_4d82e405-11fd-4e33-8513-d36299e44a67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:to="loc_us-gaap_CorporateNonSegmentMember_4d82e405-11fd-4e33-8513-d36299e44a67" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails" xlink:type="extended" id="i4865099b941048189e194d62c288a30a_ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_4c9e592a-78ad-4464-8ee0-50c8e7d258d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCharges_fbf000ae-40dd-429d-b138-e30721f08ac8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCharges"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4c9e592a-78ad-4464-8ee0-50c8e7d258d9" xlink:to="loc_us-gaap_RestructuringCharges_fbf000ae-40dd-429d-b138-e30721f08ac8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_9b4aa800-990d-42c0-94cf-dbf23989f0fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4c9e592a-78ad-4464-8ee0-50c8e7d258d9" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_9b4aa800-990d-42c0-94cf-dbf23989f0fd" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis_0440ca45-e139-4663-b9da-6e4f4c99dd87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_9b4aa800-990d-42c0-94cf-dbf23989f0fd" xlink:to="loc_us-gaap_RestructuringCostAndReserveAxis_0440ca45-e139-4663-b9da-6e4f4c99dd87" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_0440ca45-e139-4663-b9da-6e4f4c99dd87_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_0440ca45-e139-4663-b9da-6e4f4c99dd87" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_0440ca45-e139-4663-b9da-6e4f4c99dd87_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_0440ca45-e139-4663-b9da-6e4f4c99dd87" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_bb5fa0e4-65b1-4488-9e6f-fecd310b15e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:to="loc_us-gaap_CostOfSalesMember_bb5fa0e4-65b1-4488-9e6f-fecd310b15e0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SellingGeneralAndAdministrativeExpenseMember_17289d1e-45df-4460-8db9-b26cfc3bad15" xlink:href="rock-20221231.xsd#rock_SellingGeneralAndAdministrativeExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:to="loc_rock_SellingGeneralAndAdministrativeExpenseMember_17289d1e-45df-4460-8db9-b26cfc3bad15" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails" xlink:type="extended" id="ib5a82ad7e0124e34aed2f29be9bd413e_IncomeTaxesBenefitofProvisionforIncomeTaxesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxContingencyLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1b8b0cc4-789a-4bc1-b75a-a3595e0f2ad8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1b8b0cc4-789a-4bc1-b75a-a3595e0f2ad8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_9ad35185-6445-48fe-9b61-a3970a14f452" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_9ad35185-6445-48fe-9b61-a3970a14f452" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_aa58369c-3fba-46ca-8994-c0946a44daf9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_aa58369c-3fba-46ca-8994-c0946a44daf9" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_b4c3d406-4303-4b7b-8681-d4e30273f0db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_b4c3d406-4303-4b7b-8681-d4e30273f0db" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_543310d8-3882-4888-8020-cf0cec286e68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_543310d8-3882-4888-8020-cf0cec286e68" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_f051f7cd-f595-429a-b53d-6b69c01a60a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_f051f7cd-f595-429a-b53d-6b69c01a60a2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_b6bb8c75-5563-44ca-8d82-0ca8a9ae78d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_b6bb8c75-5563-44ca-8d82-0ca8a9ae78d0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_418fcfb6-9a5a-414f-92b1-1e40421365d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_418fcfb6-9a5a-414f-92b1-1e40421365d6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_c89dfcdb-3fb6-42d5-9e07-d7d8f6252602" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_c89dfcdb-3fb6-42d5-9e07-d7d8f6252602" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_47892310-09d6-4aaa-b849-ba96e87d3777" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_47892310-09d6-4aaa-b849-ba96e87d3777" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyTable_37df683c-d83e-4bf2-891a-4a5c517f342b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxContingencyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:to="loc_us-gaap_IncomeTaxContingencyTable_37df683c-d83e-4bf2-891a-4a5c517f342b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_7a699f6b-4d05-4076-b9b5-b40a39f287ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_37df683c-d83e-4bf2-891a-4a5c517f342b" xlink:to="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_7a699f6b-4d05-4076-b9b5-b40a39f287ac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentOperatingActivitiesDomain_7a699f6b-4d05-4076-b9b5-b40a39f287ac_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentOperatingActivitiesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_7a699f6b-4d05-4076-b9b5-b40a39f287ac" xlink:to="loc_us-gaap_SegmentOperatingActivitiesDomain_7a699f6b-4d05-4076-b9b5-b40a39f287ac_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentOperatingActivitiesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_7a699f6b-4d05-4076-b9b5-b40a39f287ac" xlink:to="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentContinuingOperationsMember_3942a779-9b9c-4a0f-84f8-f363507504ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentContinuingOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:to="loc_us-gaap_SegmentContinuingOperationsMember_3942a779-9b9c-4a0f-84f8-f363507504ae" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_12d084aa-b63b-40ef-9f84-b7e893a2043a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_12d084aa-b63b-40ef-9f84-b7e893a2043a" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended" id="i1a7c4be257624f979d1e9dfd6ab4e9c1_IncomeTaxesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_75b5e845-b043-438a-9d75-e9f43bcef201" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_75b5e845-b043-438a-9d75-e9f43bcef201" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_4535f329-54ff-45f0-b09d-4fbd95be6f36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_OperatingLossCarryforwards_4535f329-54ff-45f0-b09d-4fbd95be6f36" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_77a1cd13-4cf3-41e8-8930-79e8f7d6f3e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_77a1cd13-4cf3-41e8-8930-79e8f7d6f3e6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings_9178059c-e90d-4372-bd9a-2c34371c7959" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings_9178059c-e90d-4372-bd9a-2c34371c7959" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IncomeTaxStatueOfLimitationsExpirationPeriod_5ab2f28f-9160-419a-b5f3-b42e2e5c2610" xlink:href="rock-20221231.xsd#rock_IncomeTaxStatueOfLimitationsExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_IncomeTaxStatueOfLimitationsExpirationPeriod_5ab2f28f-9160-419a-b5f3-b42e2e5c2610" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CapitalLossCarryfoward_975ce8a0-571a-4f72-9e0d-214ff83c592f" xlink:href="rock-20221231.xsd#rock_CapitalLossCarryfoward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_CapitalLossCarryfoward_975ce8a0-571a-4f72-9e0d-214ff83c592f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CapitalLossCarryfowardAmendedReturns_5f93ea3e-50cc-4ef5-8253-ba21b35ed70a" xlink:href="rock-20221231.xsd#rock_CapitalLossCarryfowardAmendedReturns"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_CapitalLossCarryfowardAmendedReturns_5f93ea3e-50cc-4ef5-8253-ba21b35ed70a" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredTaxAssetsCapitalLossCarryfowards_c208bc5a-928a-4440-a154-55f37b08096e" xlink:href="rock-20221231.xsd#rock_DeferredTaxAssetsCapitalLossCarryfowards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_DeferredTaxAssetsCapitalLossCarryfowards_c208bc5a-928a-4440-a154-55f37b08096e" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_5edfdce6-ebbc-4a7a-9b0f-a057968333bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_5edfdce6-ebbc-4a7a-9b0f-a057968333bd" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_6f6650d7-42e4-4941-88ab-72ef6a37edd4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:to="loc_us-gaap_DomesticCountryMember_6f6650d7-42e4-4941-88ab-72ef6a37edd4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_02c867e6-22e8-40d3-8498-11a0f4ec7202" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_02c867e6-22e8-40d3-8498-11a0f4ec7202" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember_93419334-1557-45df-87fe-ac2c156373f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCountryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:to="loc_us-gaap_ForeignCountryMember_93419334-1557-45df-87fe-ac2c156373f7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:to="loc_srt_RangeAxis_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9" xlink:to="loc_srt_RangeMember_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9" xlink:to="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_e7aac278-09f4-44bb-9a10-8a042d903be9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:to="loc_srt_MinimumMember_e7aac278-09f4-44bb-9a10-8a042d903be9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_585546d5-e0eb-4b88-b33a-5f709ec90b6a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:to="loc_srt_MaximumMember_585546d5-e0eb-4b88-b33a-5f709ec90b6a" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesSummaryofValuationAllowanceDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails" xlink:type="extended" id="i30edcdf4e7914f3888142b2b0111dd82_IncomeTaxesSummaryofValuationAllowanceDetails">
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_f9381314-d4c3-4fba-a9ee-43f6addc841f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MovementInValuationAllowancesAndReservesRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_f9381314-d4c3-4fba-a9ee-43f6addc841f" xlink:to="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_88eeba26-1da6-46f6-9ad7-5147968b72e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_88eeba26-1da6-46f6-9ad7-5147968b72e2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_3c4d041c-d78c-499a-a9e9-6930ef6396cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_3c4d041c-d78c-499a-a9e9-6930ef6396cd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_d6986671-4664-40c5-b791-35ffce978333" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDeductions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_d6986671-4664-40c5-b791-35ffce978333" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_df22ddf5-fc5c-4d8c-8b10-b31739631ba7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesAdjustments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_df22ddf5-fc5c-4d8c-8b10-b31739631ba7" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation_2f560bf7-d4f2-4e03-9798-bb91239bb4f9" xlink:href="rock-20221231.xsd#rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation_2f560bf7-d4f2-4e03-9798-bb91239bb4f9" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_4a1b05e0-b9c3-4272-8a1f-cda0a487e018" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_e8c5451d-f7aa-4824-9446-6a7a7bd6d9b4" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_f9381314-d4c3-4fba-a9ee-43f6addc841f" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_e8c5451d-f7aa-4824-9446-6a7a7bd6d9b4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_f535b48e-0517-43d7-9167-01268e3277b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_e8c5451d-f7aa-4824-9446-6a7a7bd6d9b4" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_f535b48e-0517-43d7-9167-01268e3277b7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_f535b48e-0517-43d7-9167-01268e3277b7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_f535b48e-0517-43d7-9167-01268e3277b7" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_f535b48e-0517-43d7-9167-01268e3277b7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_835b114f-a588-4798-99d0-8ea5d2acd837" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_f535b48e-0517-43d7-9167-01268e3277b7" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_835b114f-a588-4798-99d0-8ea5d2acd837" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember_3212a1d2-1789-4aaa-8b5d-70be7928738a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_835b114f-a588-4798-99d0-8ea5d2acd837" xlink:to="loc_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember_3212a1d2-1789-4aaa-8b5d-70be7928738a" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EarningsperShareNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails" xlink:type="extended" id="ifd4d684a029345c78918697a73bc68f7_EarningsperShareNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_ba5f905d-8ffb-40c3-bf32-19542878c441" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_88712834-e55f-44d4-88c3-a8b4bb2df599" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_ba5f905d-8ffb-40c3-bf32-19542878c441" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_88712834-e55f-44d4-88c3-a8b4bb2df599" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_02260661-5b0a-41bb-a90f-ef97bf86f151" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_ba5f905d-8ffb-40c3-bf32-19542878c441" xlink:to="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_02260661-5b0a-41bb-a90f-ef97bf86f151" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_f2087035-4467-409a-ba62-27878ac0ff2f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_02260661-5b0a-41bb-a90f-ef97bf86f151" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_f2087035-4467-409a-ba62-27878ac0ff2f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain_f2087035-4467-409a-ba62-27878ac0ff2f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_f2087035-4467-409a-ba62-27878ac0ff2f" xlink:to="loc_us-gaap_AntidilutiveSecuritiesNameDomain_f2087035-4467-409a-ba62-27878ac0ff2f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain_4ea5cb8d-f894-4858-9ac2-da61f6f2eaba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_f2087035-4467-409a-ba62-27878ac0ff2f" xlink:to="loc_us-gaap_AntidilutiveSecuritiesNameDomain_4ea5cb8d-f894-4858-9ac2-da61f6f2eaba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_c9ec2941-c956-4cd0-87cf-30454f2a33bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_4ea5cb8d-f894-4858-9ac2-da61f6f2eaba" xlink:to="loc_us-gaap_CommonStockMember_c9ec2941-c956-4cd0-87cf-30454f2a33bd" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/LeasesNarrativeDetails" xlink:type="extended" id="id5ed20930a134816b0234ae827c9a684_LeasesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_bc86cf18-1162-494a-aa48-4f1270e7712f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_bc86cf18-1162-494a-aa48-4f1270e7712f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_dfaeb3d7-e40f-451a-8d1d-eb4d28f66600" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:to="loc_us-gaap_StockholdersEquity_dfaeb3d7-e40f-451a-8d1d-eb4d28f66600" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_44e81e93-12be-493f-8e11-29fe3c10cf64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_44e81e93-12be-493f-8e11-29fe3c10cf64" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_44e81e93-12be-493f-8e11-29fe3c10cf64_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_44e81e93-12be-493f-8e11-29fe3c10cf64" xlink:to="loc_us-gaap_EquityComponentDomain_44e81e93-12be-493f-8e11-29fe3c10cf64_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_642292c4-7100-45d4-9411-a0a53c1cc628" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_44e81e93-12be-493f-8e11-29fe3c10cf64" xlink:to="loc_us-gaap_EquityComponentDomain_642292c4-7100-45d4-9411-a0a53c1cc628" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_2c2b1236-c1b6-4c55-bf3b-16579c7c4ba1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_642292c4-7100-45d4-9411-a0a53c1cc628" xlink:to="loc_us-gaap_RetainedEarningsMember_2c2b1236-c1b6-4c55-bf3b-16579c7c4ba1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_fd86f341-dc18-4b0f-ae4c-bd4c44975316" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:to="loc_srt_RangeAxis_fd86f341-dc18-4b0f-ae4c-bd4c44975316" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_fd86f341-dc18-4b0f-ae4c-bd4c44975316_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_fd86f341-dc18-4b0f-ae4c-bd4c44975316" xlink:to="loc_srt_RangeMember_fd86f341-dc18-4b0f-ae4c-bd4c44975316_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_fd86f341-dc18-4b0f-ae4c-bd4c44975316" xlink:to="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_adeeba86-65f3-4111-8350-d7fe3c92f449" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:to="loc_srt_MinimumMember_adeeba86-65f3-4111-8350-d7fe3c92f449" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_fda5500e-aee8-48a2-9df1-e731c6073305" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:to="loc_srt_MaximumMember_fda5500e-aee8-48a2-9df1-e731c6073305" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_cb1abd26-a190-4e3f-b583-539d7cbee2a9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_cb1abd26-a190-4e3f-b583-539d7cbee2a9" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cb1abd26-a190-4e3f-b583-539d7cbee2a9_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_cb1abd26-a190-4e3f-b583-539d7cbee2a9" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cb1abd26-a190-4e3f-b583-539d7cbee2a9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_90414a10-ba92-4edb-9203-946ec02baa2a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_cb1abd26-a190-4e3f-b583-539d7cbee2a9" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_90414a10-ba92-4edb-9203-946ec02baa2a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_b4f4d098-adff-4c32-86bc-1963fc4cd60b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_90414a10-ba92-4edb-9203-946ec02baa2a" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_b4f4d098-adff-4c32-86bc-1963fc4cd60b" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails" xlink:type="extended" id="i084f3bf53f4948dd8e37b647e58e372a_SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_76725495-c4d5-467e-b7c8-d77f94cdb3fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_Revenues_76725495-c4d5-467e-b7c8-d77f94cdb3fd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_45e93914-9a04-4414-b815-4fdf6281f24f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_OperatingIncomeLoss_45e93914-9a04-4414-b815-4fdf6281f24f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_6cb92ddc-dfe8-4a7e-8db3-59add737d20c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_6cb92ddc-dfe8-4a7e-8db3-59add737d20c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_0814c8e0-0d59-4623-95c4-78cecae4c5d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_Assets_0814c8e0-0d59-4623-95c4-78cecae4c5d3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e3318f63-e5a3-499d-b095-df4010061599" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e3318f63-e5a3-499d-b095-df4010061599" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_322691b9-197d-4ae6-abed-b99a2bd695ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_322691b9-197d-4ae6-abed-b99a2bd695ee" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_322691b9-197d-4ae6-abed-b99a2bd695ee_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_322691b9-197d-4ae6-abed-b99a2bd695ee" xlink:to="loc_us-gaap_SegmentDomain_322691b9-197d-4ae6-abed-b99a2bd695ee_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_322691b9-197d-4ae6-abed-b99a2bd695ee" xlink:to="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_5b31fe7d-1550-4ef6-9f0f-33d74c025f9a" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_RenewablesMember_5b31fe7d-1550-4ef6-9f0f-33d74c025f9a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_28e196da-bf02-412c-b416-a6a1e5b125de" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_ResidentialMember_28e196da-bf02-412c-b416-a6a1e5b125de" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_f8318b6d-9669-4754-8a26-fa325d6c737f" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_AgtechMember_f8318b6d-9669-4754-8a26-fa325d6c737f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_272ddf49-b9e8-46c2-8cf8-0c6655ef3069" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_InfrastructureMember_272ddf49-b9e8-46c2-8cf8-0c6655ef3069" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:to="loc_srt_ConsolidationItemsAxis_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077" xlink:to="loc_srt_ConsolidationItemsDomain_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077" xlink:to="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_f1b4c289-b11e-4796-8192-e53ecc222852" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:to="loc_us-gaap_OperatingSegmentsMember_f1b4c289-b11e-4796-8192-e53ecc222852" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_cea2b0db-62fc-4e43-8304-215e5b897596" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:to="loc_us-gaap_CorporateNonSegmentMember_cea2b0db-62fc-4e43-8304-215e5b897596" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_35a152fa-e551-4c10-8eec-f262655c9b2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:to="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_35a152fa-e551-4c10-8eec-f262655c9b2a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentOperatingActivitiesDomain_35a152fa-e551-4c10-8eec-f262655c9b2a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentOperatingActivitiesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_35a152fa-e551-4c10-8eec-f262655c9b2a" xlink:to="loc_us-gaap_SegmentOperatingActivitiesDomain_35a152fa-e551-4c10-8eec-f262655c9b2a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentOperatingActivitiesDomain_6a0e1d46-0c59-45b2-b905-69f8895c7ae6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentOperatingActivitiesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_35a152fa-e551-4c10-8eec-f262655c9b2a" xlink:to="loc_us-gaap_SegmentOperatingActivitiesDomain_6a0e1d46-0c59-45b2-b905-69f8895c7ae6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_89ce5b92-a927-4504-8e08-df982b62043f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentOperatingActivitiesDomain_6a0e1d46-0c59-45b2-b905-69f8895c7ae6" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_89ce5b92-a927-4504-8e08-df982b62043f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationNetSalesbyContractTypeDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails" xlink:type="extended" id="i26262a7d0eea4a89bd215e505607fa89_SegmentInformationNetSalesbyContractTypeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_cb16abe0-f3d2-4353-a6d8-6a407d95428e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_bcb038dc-d9cd-4166-9e96-7b3c7973490b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_cb16abe0-f3d2-4353-a6d8-6a407d95428e" xlink:to="loc_us-gaap_Revenues_bcb038dc-d9cd-4166-9e96-7b3c7973490b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_cb16abe0-f3d2-4353-a6d8-6a407d95428e" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_53f9de0d-d099-4cb3-8691-8fd06891cbaf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_53f9de0d-d099-4cb3-8691-8fd06891cbaf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember_f6ee83d2-aa53-487f-8bda-2d799387881b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:to="loc_us-gaap_TransferredOverTimeMember_f6ee83d2-aa53-487f-8bda-2d799387881b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_b64621e1-4986-4f04-a463-5a3c67c54334" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_b64621e1-4986-4f04-a463-5a3c67c54334" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_b64621e1-4986-4f04-a463-5a3c67c54334_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_b64621e1-4986-4f04-a463-5a3c67c54334" xlink:to="loc_us-gaap_SegmentDomain_b64621e1-4986-4f04-a463-5a3c67c54334_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_b64621e1-4986-4f04-a463-5a3c67c54334" xlink:to="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_64d27c90-6a91-483d-bb9a-1ce12ca372e2" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_RenewablesMember_64d27c90-6a91-483d-bb9a-1ce12ca372e2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_f6ecbeb9-f0d4-4c24-a422-79000104ca46" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_ResidentialMember_f6ecbeb9-f0d4-4c24-a422-79000104ca46" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_339f5939-39b7-4a02-abfa-40044174d69d" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_AgtechMember_339f5939-39b7-4a02-abfa-40044174d69d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_d05d0e7d-2e2b-4729-9f00-959a5cc73720" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_InfrastructureMember_d05d0e7d-2e2b-4729-9f00-959a5cc73720" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"/>
  <link:definitionLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails" xlink:type="extended" id="i8e6586a9be6b44618fdde2768e74369b_SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_3c8914ac-af4f-4b6f-86b2-1637ebd174ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:to="loc_us-gaap_Revenues_3c8914ac-af4f-4b6f-86b2-1637ebd174ce" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncurrentAssets_6b9ac3fc-5362-479b-83a8-1ebe859119ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncurrentAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:to="loc_us-gaap_NoncurrentAssets_6b9ac3fc-5362-479b-83a8-1ebe859119ae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_41236efd-2d79-4f63-913b-b7e5382ba25c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_41236efd-2d79-4f63-913b-b7e5382ba25c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_123644a1-a58e-4d29-8a5f-a8f94b4ce114" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_41236efd-2d79-4f63-913b-b7e5382ba25c" xlink:to="loc_srt_StatementGeographicalAxis_123644a1-a58e-4d29-8a5f-a8f94b4ce114" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_123644a1-a58e-4d29-8a5f-a8f94b4ce114_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_123644a1-a58e-4d29-8a5f-a8f94b4ce114" xlink:to="loc_srt_SegmentGeographicalDomain_123644a1-a58e-4d29-8a5f-a8f94b4ce114_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_123644a1-a58e-4d29-8a5f-a8f94b4ce114" xlink:to="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NorthAmericaMember_e7a30b59-e48b-4775-a34e-b80869763310" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NorthAmericaMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:to="loc_srt_NorthAmericaMember_e7a30b59-e48b-4775-a34e-b80869763310" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaMember_fdfd100c-5cc3-4fe4-ac1d-5a9e60f292eb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:to="loc_srt_AsiaMember_fdfd100c-5cc3-4fe4-ac1d-5a9e60f292eb" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="simple" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd#eedm"/>
  <link:definitionLink xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>12
<FILENAME>rock-20221231_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:494ce7ad-dd21-4422-be07-151863b91ba7,g:883578fa-a7f5-4214-bb5b-e80105339f54-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved_261fa40f-9c90-44c0-baae-4fdda2bc4570_terseLabel_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares for which performance condition was not achieved (in shares)</link:label>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved_label_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Performance Conditions Not Achieved</link:label>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved_documentation_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Performance Conditions Not Achieved</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" xlink:to="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_c07b5b64-2a1a-4827-9e8c-8ff689c7f60b_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis" xlink:to="lab_us-gaap_BusinessAcquisitionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_04d066a6-8441-45d7-9cd7-089474fe7673_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_dcb68dec-1066-4d80-a35e-f35013cbd49d_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentForeignTaxExpenseBenefit_811647f3-720e-4426-b992-c80849b976cd_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentForeignTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign</link:label>
    <link:label id="lab_us-gaap_CurrentForeignTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentForeignTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Foreign Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentForeignTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentForeignTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_b6fe8970-153d-412a-a546-b684f9de5959_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign currency transactions and translation</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign Currency Transactions and Translations Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_a337bf1c-25e0-4e68-954f-211891ba176a_terseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Bad debt expense, net of recoveries</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentCarryingAmount_3f4060c2-242e-4c74-a044-f909e1ee4dde_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long term debt gross</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentCarryingAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentCarryingAmount" xlink:to="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_326a9b77-fd53-4c3e-ab58-12397e1a968f_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets held for sale</link:label>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:to="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_a2a8d07f-4bf2-4836-bb69-ce1730a5d0d8_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_IndustrialBusinessSegmentMember_934898f0-a661-4be8-8b2e-25556fa5c009_terseLabel_en-US" xlink:label="lab_rock_IndustrialBusinessSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Industrial Business Segment</link:label>
    <link:label id="lab_rock_IndustrialBusinessSegmentMember_label_en-US" xlink:label="lab_rock_IndustrialBusinessSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Industrial Business Segment [Member]</link:label>
    <link:label id="lab_rock_IndustrialBusinessSegmentMember_documentation_en-US" xlink:label="lab_rock_IndustrialBusinessSegmentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Industrial Business Segment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndustrialBusinessSegmentMember" xlink:href="rock-20221231.xsd#rock_IndustrialBusinessSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_IndustrialBusinessSegmentMember" xlink:to="lab_rock_IndustrialBusinessSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_InventoryValuationScrappedInventoryAndOtherAdjustments_cc4256cd-3592-4651-bb0c-dcf085740964_negatedLabel_en-US" xlink:label="lab_rock_InventoryValuationScrappedInventoryAndOtherAdjustments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scrapped inventory and other adjustments</link:label>
    <link:label id="lab_rock_InventoryValuationScrappedInventoryAndOtherAdjustments_label_en-US" xlink:label="lab_rock_InventoryValuationScrappedInventoryAndOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Scrapped Inventory And Other Adjustments</link:label>
    <link:label id="lab_rock_InventoryValuationScrappedInventoryAndOtherAdjustments_documentation_en-US" xlink:label="lab_rock_InventoryValuationScrappedInventoryAndOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory valuation scrapped inventory and other adjustments.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InventoryValuationScrappedInventoryAndOtherAdjustments" xlink:href="rock-20221231.xsd#rock_InventoryValuationScrappedInventoryAndOtherAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_InventoryValuationScrappedInventoryAndOtherAdjustments" xlink:to="lab_rock_InventoryValuationScrappedInventoryAndOtherAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_aa71ae3d-224b-4845-b738-4d2a8d4fb98f_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_8868ed45-d60c-45f8-a453-26dc133229ad_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred:</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessExitCosts1_94c8e1f5-8cce-4db5-80c2-48b38ea7db83_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessExitCosts1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exit activity costs (recoveries)</link:label>
    <link:label id="lab_us-gaap_BusinessExitCosts1_60187969-6cee-4e26-a358-1da798c46e52_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessExitCosts1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exit activity costs recognized</link:label>
    <link:label id="lab_us-gaap_BusinessExitCosts1_label_en-US" xlink:label="lab_us-gaap_BusinessExitCosts1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Exit Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessExitCosts1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessExitCosts1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessExitCosts1" xlink:to="lab_us-gaap_BusinessExitCosts1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_d8f74623-d18a-414f-99b1-f68a27a76848_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesOutstanding" xlink:to="lab_us-gaap_PreferredStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_13a83ed9-b01b-45ef-a1f4-154b348c864b_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition related assets and liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsPolicy" xlink:to="lab_us-gaap_BusinessCombinationsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanPlanAmendments_eecf5553-cacd-4170-a210-3bd6741f6543_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanPlanAmendments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan amendments</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanPlanAmendments_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanPlanAmendments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Benefit Obligation, Increase (Decrease) for Plan Amendment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanPlanAmendments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanPlanAmendments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanPlanAmendments" xlink:to="lab_us-gaap_DefinedBenefitPlanPlanAmendments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_6d25b7c1-b705-494f-986c-cf91acb31569_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_9dfd9ca0-fa04-40ac-ad50-0aeb7bed60a0_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant, and equipment, gross</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock_1c37bd7d-39c7-4e63-904a-d402fd412f6b_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary Of Activity Recorded Within The Allowance For Doubtful Accounts</link:label>
    <link:label id="lab_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing Receivable, Current, Allowance for Credit Loss [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A401kPlanMember_5fdcc6d2-fcf2-4181-bf0b-6f4448cc5d86_terseLabel_en-US" xlink:label="lab_rock_A401kPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">401(k) plan</link:label>
    <link:label id="lab_rock_A401kPlanMember_label_en-US" xlink:label="lab_rock_A401kPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">401(k) Plan [Member]</link:label>
    <link:label id="lab_rock_A401kPlanMember_documentation_en-US" xlink:label="lab_rock_A401kPlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">401(k) Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A401kPlanMember" xlink:href="rock-20221231.xsd#rock_A401kPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A401kPlanMember" xlink:to="lab_rock_A401kPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_e7e97ff6-6b41-41c5-add8-6b395e2b5eac_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum borrowing capacity under the revolving credit facility</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_f14adca2-8213-4bfb-987f-b0b781ebaa63_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_7965d8d7-223a-414e-8866-159a8c944995_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDeductions_5ebb751a-d5a5-42bd-b669-b5b3d71bd309_negatedNetLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDeductions" xlink:role="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reductions</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDeductions_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDeductions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Deduction</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDeductions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDeductions" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesDeductions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringReserve_7dc344b2-f477-4c86-9062-dd2ffa4413c1_periodStartLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserve" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance as of</link:label>
    <link:label id="lab_us-gaap_RestructuringReserve_75d84efe-d8ea-4095-ac3d-153adea70acb_periodEndLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserve" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance as of</link:label>
    <link:label id="lab_us-gaap_RestructuringReserve_label_en-US" xlink:label="lab_us-gaap_RestructuringReserve" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserve"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringReserve" xlink:to="lab_us-gaap_RestructuringReserve" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapital_1368aada-d87a-4f3f-9623-188e9a5a7c00_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapital_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid in Capital</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapital" xlink:to="lab_us-gaap_AdditionalPaidInCapital" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryAdjustments_f3d121c6-8eb7-4597-8915-0eb207c39f61_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_InventoryAdjustments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less reserves</link:label>
    <link:label id="lab_us-gaap_InventoryAdjustments_label_en-US" xlink:label="lab_us-gaap_InventoryAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Adjustments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryAdjustments" xlink:to="lab_us-gaap_InventoryAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_032af09e-c3d8-4b5d-89e1-371b1e8612d4_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net sales</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_e9a11fa5-871b-4eca-8c65-2c84f5272c48_verboseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIBOR floor, plus</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_TwoThousandFifteenEquityIncentivePlanMember_d2ed4558-fb52-4953-b516-4e48c6f13431_terseLabel_en-US" xlink:label="lab_rock_TwoThousandFifteenEquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2015 Equity Incentive Plan</link:label>
    <link:label id="lab_rock_TwoThousandFifteenEquityIncentivePlanMember_label_en-US" xlink:label="lab_rock_TwoThousandFifteenEquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Two Thousand Fifteen Equity Incentive Plan [Member]</link:label>
    <link:label id="lab_rock_TwoThousandFifteenEquityIncentivePlanMember_documentation_en-US" xlink:label="lab_rock_TwoThousandFifteenEquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Two Thousand Fifteen Equity Incentive Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandFifteenEquityIncentivePlanMember" xlink:href="rock-20221231.xsd#rock_TwoThousandFifteenEquityIncentivePlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_TwoThousandFifteenEquityIncentivePlanMember" xlink:to="lab_rock_TwoThousandFifteenEquityIncentivePlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_51a92b4b-1854-4bc6-bf8b-2a925a4c09f7_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock_d1fcd861-ff3b-4502-aeec-fd5b3f71cfd0_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Ranges of Outstanding and Exercisable Options</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_e32ea436-9b3e-432d-b181-c1f0b10c47c8_terseLabel_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_label_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Depreciation_e149d7c8-b1ab-41e6-9adc-6ad25037c05d_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation expense</link:label>
    <link:label id="lab_us-gaap_Depreciation_label_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation" xlink:to="lab_us-gaap_Depreciation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_d662440c-c3b8-4099-89c9-2190cddc00c7_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock options exercised, shares</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_78335508-1e4a-4077-a03a-4955255523d1_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_IndefiniteLivedAccumulatedAmortization_b8c90ef0-e92b-4564-85a2-679588c25ec8_terseLabel_en-US" xlink:label="lab_rock_IndefiniteLivedAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Amortization, Indefinite-lived intangible assets</link:label>
    <link:label id="lab_rock_IndefiniteLivedAccumulatedAmortization_label_en-US" xlink:label="lab_rock_IndefiniteLivedAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite Lived Accumulated Amortization</link:label>
    <link:label id="lab_rock_IndefiniteLivedAccumulatedAmortization_documentation_en-US" xlink:label="lab_rock_IndefiniteLivedAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-lived accumulated amortization.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndefiniteLivedAccumulatedAmortization" xlink:href="rock-20221231.xsd#rock_IndefiniteLivedAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_IndefiniteLivedAccumulatedAmortization" xlink:to="lab_rock_IndefiniteLivedAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_17c7c3a4-c727-4c97-a492-080dd8753a89_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average discount rate - operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_CapitalLossCarryfoward_861ce3e9-b0ad-4a0e-8df5-36ad3d8cec7e_terseLabel_en-US" xlink:label="lab_rock_CapitalLossCarryfoward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital loss carryforward</link:label>
    <link:label id="lab_rock_CapitalLossCarryfoward_label_en-US" xlink:label="lab_rock_CapitalLossCarryfoward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital Loss Carryfoward</link:label>
    <link:label id="lab_rock_CapitalLossCarryfoward_documentation_en-US" xlink:label="lab_rock_CapitalLossCarryfoward" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital Loss Carryfoward</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CapitalLossCarryfoward" xlink:href="rock-20221231.xsd#rock_CapitalLossCarryfoward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_CapitalLossCarryfoward" xlink:to="lab_rock_CapitalLossCarryfoward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_316768f9-aafc-40de-b311-43d419ca3b53_verboseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Initial applicable margin</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_9204cb59-e581-43e6-8673-2bc2b50805fc_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A2015PlanMember_5d199f46-24ff-44fa-985d-1232c1c339e6_terseLabel_en-US" xlink:label="lab_rock_A2015PlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2015 Plan</link:label>
    <link:label id="lab_rock_A2015PlanMember_label_en-US" xlink:label="lab_rock_A2015PlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2015 Plan [Member]</link:label>
    <link:label id="lab_rock_A2015PlanMember_documentation_en-US" xlink:label="lab_rock_A2015PlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2015 Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2015PlanMember" xlink:href="rock-20221231.xsd#rock_A2015PlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A2015PlanMember" xlink:to="lab_rock_A2015PlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncurrentAssets_64405c0d-c281-4854-b41f-254e3dd9e3df_terseLabel_en-US" xlink:label="lab_us-gaap_NoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-lived assets</link:label>
    <link:label id="lab_us-gaap_NoncurrentAssets_label_en-US" xlink:label="lab_us-gaap_NoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncurrentAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncurrentAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncurrentAssets" xlink:to="lab_us-gaap_NoncurrentAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_6db8f6a5-99a8-4882-ad83-e0ab93e32f7b_totalLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net periodic pension cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Net Periodic Benefit Cost (Credit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:to="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_8ca2bbbd-350d-4df9-a9d9-615355404224_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DomesticCountryMember_521b50dd-e8aa-4f34-83cd-32758478dae2_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_DomesticCountryMember_label_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Tax Authority [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember" xlink:to="lab_us-gaap_DomesticCountryMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNoncashIncomeExpense_4013e72a-0b72-4c9c-bdc4-26f74b598b97_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other, net</link:label>
    <link:label id="lab_us-gaap_OtherNoncashIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Noncash Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncashIncomeExpense" xlink:to="lab_us-gaap_OtherNoncashIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_a6b79e20-7b50-4e88-9735-351ecbde074e_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable_8f5e0ea1-d3d0-4dde-9c71-2c6f24251efe_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue recognized which was in contract liabilities</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Asset, Reclassified to Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetReclassifiedToReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable" xlink:to="lab_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_aec98475-f3d0-429e-b359-d7d89c9f1d6b_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_68cf3756-48a4-452e-9a00-3abfeabcf1d7_verboseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_c00c14e0-ba6f-40aa-bc3a-f231351f7f0d_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_9c411f8f-1fe0-4117-b0df-332d474e242c_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:to="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MeasurementInputTypeDomain_82d40a18-25c1-4745-baec-acf57d176c36_terseLabel_en-US" xlink:label="lab_us-gaap_MeasurementInputTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Input Type [Domain]</link:label>
    <link:label id="lab_us-gaap_MeasurementInputTypeDomain_label_en-US" xlink:label="lab_us-gaap_MeasurementInputTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Input Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MeasurementInputTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MeasurementInputTypeDomain" xlink:to="lab_us-gaap_MeasurementInputTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_56bc8f7a-f580-48e8-9642-d87f7808d898_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e762b48a-eaae-4c3a-b174-3f3a3b82e85e_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Anti-dilutive number of shares</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SaleLeasebackTransactionTable_61a91167-1bc9-44f0-90ce-fee3fcecd4aa_terseLabel_en-US" xlink:label="lab_us-gaap_SaleLeasebackTransactionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale Leaseback Transaction [Table]</link:label>
    <link:label id="lab_us-gaap_SaleLeasebackTransactionTable_label_en-US" xlink:label="lab_us-gaap_SaleLeasebackTransactionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale Leaseback Transaction [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleLeasebackTransactionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleLeasebackTransactionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable" xlink:to="lab_us-gaap_SaleLeasebackTransactionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAxis_e580466f-f737-4b48-9b30-7b90334ee0eb_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Axis]</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAxis_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_b21c77c5-311e-47a9-b652-1e903cd066bc_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of unrecognized prior service cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Amortization of Prior Service Cost (Credit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:to="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_1c727bd6-e37d-407e-873f-07d1b18e4d8b_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">After 2027</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_7525486c-fc96-4fbc-b1a4-863c3cfd0866_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableGrossCurrent_357caf38-a75a-425d-b8db-14867cc60bc9_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableGrossCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade accounts receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableGrossCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableGrossCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, before Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableGrossCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableGrossCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableGrossCurrent" xlink:to="lab_us-gaap_AccountsReceivableGrossCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_57af8a87-aecc-4212-af55-256991d7ff49_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_bc354976-5a46-4853-8d04-b3a94f2b1696_terseLabel_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash (used in) provided by operating activities of discontinued operations</link:label>
    <link:label id="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Provided by (Used in) Operating Activities, Discontinued Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:to="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_07a26d1b-8a68-48c3-a023-5aec41925742_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in valuation allowance</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DeltaSeparationsLLCMember_aed7fe27-bcac-403e-929a-20d3222e6333_terseLabel_en-US" xlink:label="lab_rock_DeltaSeparationsLLCMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Delta Separations, LLC</link:label>
    <link:label id="lab_rock_DeltaSeparationsLLCMember_label_en-US" xlink:label="lab_rock_DeltaSeparationsLLCMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Delta Separations, LLC [Member]</link:label>
    <link:label id="lab_rock_DeltaSeparationsLLCMember_documentation_en-US" xlink:label="lab_rock_DeltaSeparationsLLCMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Delta Separations, LLC</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeltaSeparationsLLCMember" xlink:href="rock-20221231.xsd#rock_DeltaSeparationsLLCMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DeltaSeparationsLLCMember" xlink:to="lab_rock_DeltaSeparationsLLCMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_1b1e2cfd-d86d-4589-aba6-9653d2be91cf_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation_6540c30c-495c-49c4-bdb8-6012b1c1056e_terseLabel_en-US" xlink:label="lab_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Currency translation</link:label>
    <link:label id="lab_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation_label_en-US" xlink:label="lab_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Valuation Allowances And Reserves, Increase (Decrease) For Currency Translation</link:label>
    <link:label id="lab_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation_documentation_en-US" xlink:label="lab_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Valuation Allowances And Reserves, Increase (Decrease) For Currency Translation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" xlink:href="rock-20221231.xsd#rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" xlink:to="lab_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfFinancingCosts_cf9667c9-30ca-495d-9e7e-9b8cb2fba4e4_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfFinancingCosts" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment of debt issuance costs</link:label>
    <link:label id="lab_us-gaap_PaymentsOfFinancingCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments of Financing Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfFinancingCosts" xlink:to="lab_us-gaap_PaymentsOfFinancingCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_eb8fb2e8-ef52-4906-b214-f5854fd05afc_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent [Abstract]</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_625d531d-6b23-4413-8209-3d4639ce3612_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameAxis_dd254472-e39e-4bc1-a88e-7baa0e7cec0d_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:label id="lab_us-gaap_PlanNameAxis_label_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory_ea0a5eb4-ad6c-4655-a352-532e37a4e9fc_terseLabel_en-US" xlink:label="lab_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Excess, obsolete and slow moving inventory expense</link:label>
    <link:label id="lab_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory_label_en-US" xlink:label="lab_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation, Excess Obsolete And Slow Moving Inventory</link:label>
    <link:label id="lab_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory_documentation_en-US" xlink:label="lab_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory valuation excess, obsolete, and slow-moving inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory" xlink:href="rock-20221231.xsd#rock_InventoryValuationExcessObsoleteAndSlowMovingInventory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory" xlink:to="lab_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNet_4d0a3c67-9489-4b9f-aa6a-f3d5a6643147_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs in excess of billings</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNet_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Asset, after Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetNet" xlink:to="lab_us-gaap_ContractWithCustomerAssetNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandbyLettersOfCreditMember_8db85f7d-da93-456e-a1db-52f8da26994f_terseLabel_en-US" xlink:label="lab_us-gaap_StandbyLettersOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standby Letters of Credit</link:label>
    <link:label id="lab_us-gaap_StandbyLettersOfCreditMember_label_en-US" xlink:label="lab_us-gaap_StandbyLettersOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standby Letters of Credit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandbyLettersOfCreditMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandbyLettersOfCreditMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandbyLettersOfCreditMember" xlink:to="lab_us-gaap_StandbyLettersOfCreditMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod_4fac83d5-b002-4baa-bb5e-d1dd79ad4083_terseLabel_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments (in shares)</link:label>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod_label_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period</link:label>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod_documentation_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" xlink:to="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_79b61874-496f-45f0-9086-175ca777424a_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities held for sale</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:to="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_e1b9942c-b6a8-4807-bc92-ee4123296343_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair value of plan assets</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Plan Assets, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:to="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_b87e8b7d-a7b7-49c9-b558-f68c023566b4_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_f9e449ff-d286-487d-97d2-e8064ed0d8c1_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income from continuing operations (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Diluted Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_a776ac6a-911b-4924-a6a1-7047ec80413b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingInformationRevenueAbstract_b6515726-2fed-45fd-8bda-b8763e51c9ea_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information, Revenue for Reportable Segment [Abstract]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationRevenueAbstract_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information, Revenue for Reportable Segment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationRevenueAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationRevenueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract" xlink:to="lab_us-gaap_SegmentReportingInformationRevenueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameDomain_f3792d5e-1561-476a-ab49-1a7d04bbabcd_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanNameDomain_label_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_CashPaidToSettleLiabilityAwardsTableTextBlock_fbe284b4-f7eb-4616-aa27-9e6a2f9533ef_terseLabel_en-US" xlink:label="lab_rock_CashPaidToSettleLiabilityAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Paid to Settle Liability Awards</link:label>
    <link:label id="lab_rock_CashPaidToSettleLiabilityAwardsTableTextBlock_label_en-US" xlink:label="lab_rock_CashPaidToSettleLiabilityAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Paid To Settle Liability Awards [Table Text Block]</link:label>
    <link:label id="lab_rock_CashPaidToSettleLiabilityAwardsTableTextBlock_documentation_en-US" xlink:label="lab_rock_CashPaidToSettleLiabilityAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Paid To Settle Liability Awards [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CashPaidToSettleLiabilityAwardsTableTextBlock" xlink:href="rock-20221231.xsd#rock_CashPaidToSettleLiabilityAwardsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_CashPaidToSettleLiabilityAwardsTableTextBlock" xlink:to="lab_rock_CashPaidToSettleLiabilityAwardsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillLineItems_463ce13b-e574-4b66-8a37-4f95724a6d6c_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:label id="lab_us-gaap_GoodwillLineItems_label_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillLineItems" xlink:to="lab_us-gaap_GoodwillLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_691047bd-de43-46e7-9bee-bae48249bb37_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_abfa4ba8-7454-45c9-a17c-10cc4604d72f_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings_cf71aae0-c50e-4298-9a9b-12a910991ef0_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Undistributed earnings of foreign subsidiaries</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Undistributed Foreign Earnings</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_01e730ec-eace-468d-a1b4-235bc01a99f4_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive income:</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_a362eea1-f584-4ce4-af0d-233e240db84f_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Remaining Contractual Life (in&#160;years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_21f7039a-9839-4d61-af43-608f5a4567e5_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unamortized prior service cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Accumulated Other Comprehensive (Income) Loss, Prior Service Cost (Credit), before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax" xlink:to="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentOperatingActivitiesDomain_ca8ff694-852a-4f1c-b597-427503b8d618_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentOperatingActivitiesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Activities [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentOperatingActivitiesDomain_label_en-US" xlink:label="lab_us-gaap_SegmentOperatingActivitiesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Activities [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentOperatingActivitiesDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentOperatingActivitiesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentOperatingActivitiesDomain" xlink:to="lab_us-gaap_SegmentOperatingActivitiesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SecuredOvernightFinancingRateSOFRMember_b24f2e58-36a6-4d8e-859e-eaa77cdb5a8a_terseLabel_en-US" xlink:label="lab_rock_SecuredOvernightFinancingRateSOFRMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Secured Overnight Financing Rate (SOFR)</link:label>
    <link:label id="lab_rock_SecuredOvernightFinancingRateSOFRMember_label_en-US" xlink:label="lab_rock_SecuredOvernightFinancingRateSOFRMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Secured Overnight Financing Rate (SOFR) [Member]</link:label>
    <link:label id="lab_rock_SecuredOvernightFinancingRateSOFRMember_documentation_en-US" xlink:label="lab_rock_SecuredOvernightFinancingRateSOFRMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Secured Overnight Financing Rate (SOFR)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SecuredOvernightFinancingRateSOFRMember" xlink:href="rock-20221231.xsd#rock_SecuredOvernightFinancingRateSOFRMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SecuredOvernightFinancingRateSOFRMember" xlink:to="lab_rock_SecuredOvernightFinancingRateSOFRMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_ec3ad342-f0cf-4963-92eb-bcad630fbfcf_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed_fd04761b-c016-4dbe-9aca-bbfedc532b10_terseLabel_en-US" xlink:label="lab_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of consolidated facilities to be closed</link:label>
    <link:label id="lab_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed_label_en-US" xlink:label="lab_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Cost, Number of Facilities to be Closed</link:label>
    <link:label id="lab_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed_documentation_en-US" xlink:label="lab_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Cost, Number of Facilities to be Closed</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed" xlink:href="rock-20221231.xsd#rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed" xlink:to="lab_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanActuarialGainLoss_662ea9dd-07bb-4ede-897c-c8019b890d74_negatedNetLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:role="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Actuarial losses (gains)</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanActuarialGainLoss_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Benefit Obligation, Actuarial Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanActuarialGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:to="lab_us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember_b5e79906-ad71-4f21-95a9-3b3c292e099a_terseLabel_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total Shareholder Return</link:label>
    <link:label id="lab_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember_label_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Measurement, Total Shareholder Return [Member]</link:label>
    <link:label id="lab_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember_documentation_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Measurement, Total Shareholder Return [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementTotalShareholderReturnMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember" xlink:to="lab_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_1ce12a4b-9a92-4cfa-8bd1-03b179d9296a_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Expected Future Benefit Payment, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_e205d4c1-fee2-40a5-b305-614e8b335b61_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_7d6e7b11-80cd-44f0-a97c-0d35233b0130_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current operating lease liability</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems_5321ba92-5648-486e-bbcd-e108e53cb1ee_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts, Notes, Loans and Financing Receivable [Line Items]</link:label>
    <link:label id="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems_label_en-US" xlink:label="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts, Notes, Loans and Financing Receivable [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_be14d503-83df-4dae-ad67-2a2542f82685_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Information About Restricted Stock Units and Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems_7514c461-3bea-4afc-a140-be88710fb1e4_terseLabel_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]</link:label>
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems_label_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:to="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_0cc1c964-49cd-4cef-972f-eb2a2a635890_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash proceeds from sale of business</link:label>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_label_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Divestiture of Businesses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:to="lab_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ResidentialMember_278f588d-7e80-4039-80a1-e18785ea7bb9_terseLabel_en-US" xlink:label="lab_rock_ResidentialMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Residential</link:label>
    <link:label id="lab_rock_ResidentialMember_label_en-US" xlink:label="lab_rock_ResidentialMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Residential [Member]</link:label>
    <link:label id="lab_rock_ResidentialMember_documentation_en-US" xlink:label="lab_rock_ResidentialMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Residential</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ResidentialMember" xlink:to="lab_rock_ResidentialMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_22d6701d-2bca-4674-ba76-05dce1289a25_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AccruedSharebasedCompensationCurrent_e298afd9-49a5-4194-a63b-21b5ccc75d8c_terseLabel_en-US" xlink:label="lab_rock_AccruedSharebasedCompensationCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current portion of MSPP liabilities</link:label>
    <link:label id="lab_rock_AccruedSharebasedCompensationCurrent_label_en-US" xlink:label="lab_rock_AccruedSharebasedCompensationCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Share-based Compensation, Current</link:label>
    <link:label id="lab_rock_AccruedSharebasedCompensationCurrent_documentation_en-US" xlink:label="lab_rock_AccruedSharebasedCompensationCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Share-based Compensation, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedSharebasedCompensationCurrent" xlink:href="rock-20221231.xsd#rock_AccruedSharebasedCompensationCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AccruedSharebasedCompensationCurrent" xlink:to="lab_rock_AccruedSharebasedCompensationCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_cec6ba39-e3a1-4fc5-a718-108b2b9e3051_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReceivablesAbstract_747da845-0cac-4d27-92ee-a4225fd7efdb_terseLabel_en-US" xlink:label="lab_us-gaap_ReceivablesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables [Abstract]</link:label>
    <link:label id="lab_us-gaap_ReceivablesAbstract_label_en-US" xlink:label="lab_us-gaap_ReceivablesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesAbstract" xlink:to="lab_us-gaap_ReceivablesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_4be50fb6-d583-4f3d-8fdb-b5a011c6e435_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant, and equipment</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentAnnualReport_1f6d8e81-02b9-4455-8c76-57559c8bda43_terseLabel_en-US" xlink:label="lab_dei_DocumentAnnualReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Annual Report</link:label>
    <link:label id="lab_dei_DocumentAnnualReport_label_en-US" xlink:label="lab_dei_DocumentAnnualReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Annual Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentAnnualReport" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentAnnualReport" xlink:to="lab_dei_DocumentAnnualReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_3c6d5dbf-130f-42b9-80fc-ca915d319082_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Excluding Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtNoncurrent" xlink:to="lab_us-gaap_LongTermDebtNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_64186ead-bb04-46c7-9e21-fa1511b568c8_terseLabel_en-US" xlink:label="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loans, Notes, Trade and Other Receivables Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:to="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_cccf8528-a880-4826-9b76-f85a38a3bcf6_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table]</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable" xlink:to="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_324f7f86-983f-41eb-bd73-09ab6dac7e4d_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average remaining lease term - operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementGeographicalAxis_4db650e2-345e-4544-88d9-601d63322949_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_srt_StatementGeographicalAxis_label_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis" xlink:to="lab_srt_StatementGeographicalAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1a028878-ae9a-434d-913b-1cc149db6270_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_95b3f995-fa4e-48f3-98c3-a4866d437dc6_negatedLabel_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to prior year acquisitions</link:label>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_label_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Purchase Accounting Adjustments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:to="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd1ee644-fd0a-47b2-b042-525a25677902_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Flows from Investing Activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent_f9abcf7c-dff1-4dbe-a24e-2eeceaf39476_terseLabel_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued post retirement liability: Long term portion</link:label>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liability, Defined Benefit Plan, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent" xlink:to="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_8ecabe2a-af4e-40b0-9dc0-14816ab41819_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected Benefit Payments from the Plan</link:label>
    <link:label id="lab_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Expected Benefit Payments [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_b2251965-75e1-4d04-8ff7-d1768f873374_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_2dc8022f-9aac-4637-a4ed-7f1452ef4493_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment, Intangible Asset, Indefinite-Lived (Excluding Goodwill), Statement of Income or Comprehensive Income [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment, Intangible Asset, Indefinite-Lived (Excluding Goodwill), Statement of Income or Comprehensive Income [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_2cbfc525-532b-4d33-82e7-aebab5911e2d_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_47d20b1d-7771-4453-9b6d-36a88595e07c_terseLabel_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility</link:label>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_label_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevolvingCreditFacilityMember" xlink:to="lab_us-gaap_RevolvingCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_3f884f15-3611-4967-988f-c22a7b7ced97_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_779b3f49-5bad-4332-b04a-f44008437035_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Components of Property, Plant, and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_780b4c49-1315-4ef8-bc5b-caa46fc75dcd_verboseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Postretirement Benefits</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a9b369e9-cf87-4de6-b931-377b596c070d_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unamortized Post-Retirement Health Care Costs</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Postretirement Health Coverage [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:to="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_c99b94f5-1da5-4d47-94f6-75176fce75e6_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_ebe22d49-5f8f-420e-92c4-bbde576feeb8_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current:</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_6d01720a-d99f-4636-9350-32f4d3dc89ce_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AuditInformationAbstract_label_en-US" xlink:label="lab_rock_AuditInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Audit Information [Abstract]</link:label>
    <link:label id="lab_rock_AuditInformationAbstract_documentation_en-US" xlink:label="lab_rock_AuditInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Audit Information [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AuditInformationAbstract" xlink:href="rock-20221231.xsd#rock_AuditInformationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AuditInformationAbstract" xlink:to="lab_rock_AuditInformationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A2017Member_de002b2b-b75a-4fe2-8088-e5121dae670f_terseLabel_en-US" xlink:label="lab_rock_A2017Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2017</link:label>
    <link:label id="lab_rock_A2017Member_label_en-US" xlink:label="lab_rock_A2017Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2017 [Member]</link:label>
    <link:label id="lab_rock_A2017Member_documentation_en-US" xlink:label="lab_rock_A2017Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2017 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2017Member" xlink:href="rock-20221231.xsd#rock_A2017Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A2017Member" xlink:to="lab_rock_A2017Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_5d770914-a8fc-4eeb-b564-b6a1326ad68b_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Point in Time</link:label>
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_label_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transferred at Point in Time [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredAtPointInTimeMember" xlink:to="lab_us-gaap_TransferredAtPointInTimeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8517cf51-66fc-4d13-aed0-7e5424a812c4_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Exercise Price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod_48b033d7-f8d0-4649-b029-c42b330fc5ae_terseLabel_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period</link:label>
    <link:label id="lab_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod_label_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period</link:label>
    <link:label id="lab_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod_documentation_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" xlink:to="lab_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_85651de7-043d-4459-9290-e882c45dbed4_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated useful lives</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtTextBlock_1bc00d97-e0fe-4ada-a7d8-7af03b25374f_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtTextBlock_label_en-US" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtTextBlock" xlink:to="lab_us-gaap_LongTermDebtTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_861ea855-3842-47f1-8fdc-a32d8ea39792_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units / Restricted Stock (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LandAndLandImprovements_a30ad4fe-88b2-4bd5-86b9-746d90842df2_terseLabel_en-US" xlink:label="lab_us-gaap_LandAndLandImprovements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land and land improvements</link:label>
    <link:label id="lab_us-gaap_LandAndLandImprovements_label_en-US" xlink:label="lab_us-gaap_LandAndLandImprovements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land and Land Improvements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandAndLandImprovements" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandAndLandImprovements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandAndLandImprovements" xlink:to="lab_us-gaap_LandAndLandImprovements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_49cb9d71-a1f9-47a1-9ef6-35aa34d46f59_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_3522ad3e-ae71-4377-accb-32aaa0f871f2_negatedLabel_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Valuation allowance</link:label>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_b34fe194-2f26-491d-94f9-0c9da6c2a562_terseLabel_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Valuation allowance</link:label>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_label_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Valuation Allowance</link:label>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_documentation_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:to="lab_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_84a87e89-5002-4266-9238-0a80254aa24a_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Expected Future Benefit Payment, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveAxis_33f6cc51-474f-4a15-a082-9505b5ee7336_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Type [Axis]</link:label>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveAxis_label_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis" xlink:to="lab_us-gaap_RestructuringCostAndReserveAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember_4c3322ce-77d0-4ff5-a04a-321d0e374d33_terseLabel_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Return On Invested Capital</link:label>
    <link:label id="lab_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember_label_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Measurement, Return On Invested Capital [Member]</link:label>
    <link:label id="lab_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember_documentation_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Measurement, Return On Invested Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" xlink:to="lab_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_e1d3429f-6cae-43db-a25b-5d61dcc3a035_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_e4713701-c14a-41c5-b53b-4cbe25d006ae_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of period (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2fbe2a8e-5f44-4d5b-8266-fd7e1615ee72_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of period (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_d57b279a-d7e2-4d47-ba0a-bffdfbd796ef_terseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_b451440b-8b0f-4c15-8b61-8b2f710c52d5_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_71771b8e-849a-4689-91f5-643a546be21e_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_c706dad3-54d1-4517-88b9-4703bc676053_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total deferred</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ProcessingBusinessMember_217aa428-7886-46ef-9328-28b4b4c9aaac_terseLabel_en-US" xlink:label="lab_rock_ProcessingBusinessMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Processing Business</link:label>
    <link:label id="lab_rock_ProcessingBusinessMember_label_en-US" xlink:label="lab_rock_ProcessingBusinessMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Processing Business [Member]</link:label>
    <link:label id="lab_rock_ProcessingBusinessMember_documentation_en-US" xlink:label="lab_rock_ProcessingBusinessMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Processing Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ProcessingBusinessMember" xlink:href="rock-20221231.xsd#rock_ProcessingBusinessMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ProcessingBusinessMember" xlink:to="lab_rock_ProcessingBusinessMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_36e2164d-1506-439d-b30d-9dfcfdb566ec_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price Range [Axis]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price Range [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_66ea0d88-3859-4734-b204-209c2975ebfa_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories, net of reserves</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Inventory, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_c9360777-1793-49b0-81c7-90baca03983b_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MediumTermNotesMember_aa6062c8-8be8-42db-b7db-c0cd970b1959_terseLabel_en-US" xlink:label="lab_us-gaap_MediumTermNotesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term Loan</link:label>
    <link:label id="lab_us-gaap_MediumTermNotesMember_label_en-US" xlink:label="lab_us-gaap_MediumTermNotesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Medium-term Notes [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MediumTermNotesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MediumTermNotesMember" xlink:to="lab_us-gaap_MediumTermNotesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AccruedCustomerRebatesCurrent_9240acbf-cd54-498c-8d16-3354aa3c33d3_verboseLabel_en-US" xlink:label="lab_rock_AccruedCustomerRebatesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Compensation</link:label>
    <link:label id="lab_rock_AccruedCustomerRebatesCurrent_label_en-US" xlink:label="lab_rock_AccruedCustomerRebatesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Customer Rebates, Current</link:label>
    <link:label id="lab_rock_AccruedCustomerRebatesCurrent_documentation_en-US" xlink:label="lab_rock_AccruedCustomerRebatesCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued customer rebates, current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedCustomerRebatesCurrent" xlink:href="rock-20221231.xsd#rock_AccruedCustomerRebatesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AccruedCustomerRebatesCurrent" xlink:to="lab_rock_AccruedCustomerRebatesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDomain_c7559005-28f9-4fe9-9000-bb23423ad1f1_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDomain_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_81b8b835-1dde-4440-af94-1936ab905556_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax (Benefit) Expense</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Tax [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossTaxAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossTaxAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_QualityAluminumProductsMember_7aed68cd-f36e-4959-bf4d-c236312d8ded_terseLabel_en-US" xlink:label="lab_rock_QualityAluminumProductsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quality Aluminum Products</link:label>
    <link:label id="lab_rock_QualityAluminumProductsMember_label_en-US" xlink:label="lab_rock_QualityAluminumProductsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quality Aluminum Products [Member]</link:label>
    <link:label id="lab_rock_QualityAluminumProductsMember_documentation_en-US" xlink:label="lab_rock_QualityAluminumProductsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quality Aluminum Products</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_QualityAluminumProductsMember" xlink:href="rock-20221231.xsd#rock_QualityAluminumProductsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_QualityAluminumProductsMember" xlink:to="lab_rock_QualityAluminumProductsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsDomain_8d0b6a0f-7c63-4712-a9e3-1a67f6310731_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_label_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain" xlink:to="lab_srt_ConsolidationItemsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SalesRevenueNetMember_903a65a5-236f-4f62-b9bc-1938d302162e_terseLabel_en-US" xlink:label="lab_us-gaap_SalesRevenueNetMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net sales</link:label>
    <link:label id="lab_us-gaap_SalesRevenueNetMember_label_en-US" xlink:label="lab_us-gaap_SalesRevenueNetMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue Benchmark [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueNetMember" xlink:to="lab_us-gaap_SalesRevenueNetMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_b95ef2c2-71c7-4715-a5c2-9889acab7257_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Asset and Liability</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_8ac6f169-12f2-43db-97bd-ce4cf780058c_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_5a15ab10-d874-4ad2-a6a6-bafe85633698_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent_b5fbe4b2-db83-4585-999b-86bd4a993f23_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued warranties</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Accrual, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:to="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestIncomeOther_5fc47d8b-138e-48d4-aa4f-56d31bd4959f_terseLabel_en-US" xlink:label="lab_us-gaap_InterestIncomeOther" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest income</link:label>
    <link:label id="lab_us-gaap_InterestIncomeOther_label_en-US" xlink:label="lab_us-gaap_InterestIncomeOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Income, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestIncomeOther" xlink:to="lab_us-gaap_InterestIncomeOther" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock_72f95862-90d6-4dcc-b9d5-6d1a3e5a76f2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Total Expense for All Retirement Plans</link:label>
    <link:label id="lab_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Costs of Retirement Plans [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_838f9646-f557-44a3-b742-a4ce7cea66ea_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair value of purchase consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ContractWithCustomerContractPaymentTerms_82d586f1-ae57-4352-bebc-cee209c643ef_terseLabel_en-US" xlink:label="lab_rock_ContractWithCustomerContractPaymentTerms" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract payment terms</link:label>
    <link:label id="lab_rock_ContractWithCustomerContractPaymentTerms_label_en-US" xlink:label="lab_rock_ContractWithCustomerContractPaymentTerms" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer, Contract Payment Terms</link:label>
    <link:label id="lab_rock_ContractWithCustomerContractPaymentTerms_documentation_en-US" xlink:label="lab_rock_ContractWithCustomerContractPaymentTerms" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer, Contract Payment Terms</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractWithCustomerContractPaymentTerms" xlink:href="rock-20221231.xsd#rock_ContractWithCustomerContractPaymentTerms"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ContractWithCustomerContractPaymentTerms" xlink:to="lab_rock_ContractWithCustomerContractPaymentTerms" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_3fbf18ec-87a1-45f4-9ae8-27a6677405e6_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Components of Accumulated Other Comprehensive Income (Loss)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_90d8be70-5c8c-4af6-99b3-ebe51fa20040_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_725d5cfa-a14f-471b-908d-dc7b3b63b8b2_terseLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_972f831a-748e-4189-be26-76dc5bcf6c86_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringSettlementAndImpairmentProvisions_24253476-91ee-45aa-bb26-7afdf93c5389_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringSettlementAndImpairmentProvisions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asset impairment charges</link:label>
    <link:label id="lab_us-gaap_RestructuringSettlementAndImpairmentProvisions_label_en-US" xlink:label="lab_us-gaap_RestructuringSettlementAndImpairmentProvisions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring, Settlement and Impairment Provisions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringSettlementAndImpairmentProvisions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringSettlementAndImpairmentProvisions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringSettlementAndImpairmentProvisions" xlink:to="lab_us-gaap_RestructuringSettlementAndImpairmentProvisions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_73439d4a-7c4a-4292-9fc4-d06dc446d592_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net earnings per share &#8211; Basic:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TradeAndOtherAccountsReceivablePolicy_da7f17d1-29c4-418e-999c-98f4d0ab43ea_terseLabel_en-US" xlink:label="lab_us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable and allowance for doubtful accounts and contract assets</link:label>
    <link:label id="lab_us-gaap_TradeAndOtherAccountsReceivablePolicy_label_en-US" xlink:label="lab_us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:to="lab_us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_c3508cc7-7de0-4878-82e1-068191a7a5e4_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_6593a554-1ec1-418f-99ac-ad12372bc5c3_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities [Axis]</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PerformanceSharesMember_99dc182c-2c80-4a36-be4d-51fe50c9edee_terseLabel_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance stock units (1)</link:label>
    <link:label id="lab_us-gaap_PerformanceSharesMember_label_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Shares [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PerformanceSharesMember" xlink:to="lab_us-gaap_PerformanceSharesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharesIssued_05493a27-c8e6-40fe-a52e-169c3c1fd296_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance, shares</link:label>
    <link:label id="lab_us-gaap_SharesIssued_ceab23bc-ff2d-4e40-82fb-7897e8f2df22_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance, shares</link:label>
    <link:label id="lab_us-gaap_SharesIssued_label_en-US" xlink:label="lab_us-gaap_SharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesIssued" xlink:to="lab_us-gaap_SharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_e3990ae1-9e00-4f36-b277-3654771e2f5d_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_68e90a88-ef18-4cf5-a004-aa5a2aba5099_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring and Related Costs [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring and Related Costs [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_f6b604d3-185f-4efb-9d1e-50c6e9941e64_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_284142ac-52ed-40e9-9941-2e26f1d05988_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_7d996bef-eb54-40ac-a408-cb3c33f4e119_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercised (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_a37d0830-28a9-4322-81e9-ea7932185c7c_terseLabel_en-US" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair&#160;Value</link:label>
    <link:label id="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_label_en-US" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:to="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_3c464b94-6396-49b1-8e66-0021c46dd306_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash (used in) provided by financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid_53d0f3f8-ca3c-4e63-a5a8-d6f691bc7397_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock units credited</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Share-Based Liabilities Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_3904b730-0f56-44bf-8c9f-896aa44d3ea5_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_bb4086f5-46e4-44af-af25-4203846115e4_verboseLabel_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer rebates</link:label>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtAbstract_bdf07be1-a860-41cf-947f-17c380099910_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Unclassified [Abstract]</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAbstract_label_en-US" xlink:label="lab_us-gaap_LongTermDebtAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Unclassified [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtAbstract" xlink:to="lab_us-gaap_LongTermDebtAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditMember_6c31b392-bd2b-4af6-9363-e0ed93f7228b_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility</link:label>
    <link:label id="lab_us-gaap_LineOfCreditMember_label_en-US" xlink:label="lab_us-gaap_LineOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditMember" xlink:to="lab_us-gaap_LineOfCreditMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainLossOnSaleOfBusiness_c93eed08-a446-478f-9a35-e8126f2fd530_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfBusiness" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Held for sale valuation allowance</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfBusiness_209aafc5-5e92-4aa0-ad7e-0ae8bad0326e_verboseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfBusiness" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain (loss) on disposal</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfBusiness_f8696127-87d2-40f7-bcd3-bc22a58b9c45_terseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Held for sale valuation allowance</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfBusiness_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain (Loss) on Disposition of Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfBusiness" xlink:to="lab_us-gaap_GainLossOnSaleOfBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AccruedEquityBasedCompensation_1f41694e-c257-4b04-b537-c1bd865c118e_terseLabel_en-US" xlink:label="lab_rock_AccruedEquityBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued equity based compensation</link:label>
    <link:label id="lab_rock_AccruedEquityBasedCompensation_label_en-US" xlink:label="lab_rock_AccruedEquityBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Equity Based Compensation</link:label>
    <link:label id="lab_rock_AccruedEquityBasedCompensation_documentation_en-US" xlink:label="lab_rock_AccruedEquityBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Equity Based Compensation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedEquityBasedCompensation" xlink:href="rock-20221231.xsd#rock_AccruedEquityBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AccruedEquityBasedCompensation" xlink:to="lab_rock_AccruedEquityBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_609a51d6-78f2-4cea-9182-641b5fdcc820_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders&#8217; equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_98e70d0c-8c1f-48fa-90c6-5454b919f608_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income before taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDomain_6fa7a91d-21e8-4622-a6c0-b0aee193e98a_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentDomain_label_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain" xlink:to="lab_us-gaap_SegmentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionDomain_98840740-5c74-4b1b-b2c3-d3ed6aec9fbe_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Domain]</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionDomain_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_6b7080ea-7b06-4527-afba-0e4aae6eb7b9_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable" xlink:to="lab_us-gaap_ScheduleOfGoodwillTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts_ebee73b7-fdcf-4e0b-b637-1b3bc791d99d_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exit activity costs, non-cash</link:label>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts_label_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Debt Issuance Costs and Discounts</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:to="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_15dd0cb2-80f3-4f62-8e15-e89dcb4c0b85_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings per Share</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesOther_4ec2c5f5-9140-44f6-90d2-7cb67cfe4279_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesOther_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesOther" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesOther" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MajorCustomersAxis_58d3308a-46ca-45d3-9de9-f6a80de17aa9_terseLabel_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:label id="lab_srt_MajorCustomersAxis_label_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis" xlink:to="lab_srt_MajorCustomersAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanInterestCost_b162cb4e-0fda-4da4-95e9-86935e93513f_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanInterestCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanInterestCost_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanInterestCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Interest Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanInterestCost" xlink:to="lab_us-gaap_DefinedBenefitPlanInterestCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_5ba5cbf6-d17c-4cb5-a623-934c1e9f3588_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Compensation Expense Connection with Awards</link:label>
    <link:label id="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_label_en-US" xlink:label="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disclosure of Share-Based Compensation Arrangements by Share-Based Payment Award [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:to="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_IncomeTaxStatueOfLimitationsExpirationPeriod_302cfa1a-9d61-4ab4-b9bd-1ec57d42d91f_terseLabel_en-US" xlink:label="lab_rock_IncomeTaxStatueOfLimitationsExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statute of limitations expiration period, in years</link:label>
    <link:label id="lab_rock_IncomeTaxStatueOfLimitationsExpirationPeriod_label_en-US" xlink:label="lab_rock_IncomeTaxStatueOfLimitationsExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Statue Of Limitations Expiration Period</link:label>
    <link:label id="lab_rock_IncomeTaxStatueOfLimitationsExpirationPeriod_documentation_en-US" xlink:label="lab_rock_IncomeTaxStatueOfLimitationsExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Statue Of Limitations Expiration Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IncomeTaxStatueOfLimitationsExpirationPeriod" xlink:href="rock-20221231.xsd#rock_IncomeTaxStatueOfLimitationsExpirationPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_IncomeTaxStatueOfLimitationsExpirationPeriod" xlink:to="lab_rock_IncomeTaxStatueOfLimitationsExpirationPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_61f7c95b-54b5-4ecc-be41-2bc245d9cb68_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_38f9f138-4dfc-4328-9547-0b26ce0ec069_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Provision for Income Taxes for Continuing Operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5c8a77a4-5ced-43f1-874c-207ad774a771_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_554ca499-dfe5-4ce8-8d52-b90863d0b7b3_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in valuation allowance</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BuildingsAndImprovementsGross_b5339a3a-d3f2-4ef2-9d28-e4b435573fe6_verboseLabel_en-US" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Building and improvements</link:label>
    <link:label id="lab_us-gaap_BuildingsAndImprovementsGross_label_en-US" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Buildings and Improvements, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BuildingsAndImprovementsGross" xlink:to="lab_us-gaap_BuildingsAndImprovementsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_44155d22-a9f0-44af-a1da-95681eea8df9_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average cost recognition period, in years</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxContingencyTable_e5ac2e86-05e3-40f8-b33c-80bb6d141156_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Contingency [Table]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxContingencyTable_label_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Contingency [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxContingencyTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxContingencyTable" xlink:to="lab_us-gaap_IncomeTaxContingencyTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_72d908ac-666a-4aa8-a0a5-56af6e2a80cf_terseLabel_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used in investing activities of discontinued operations</link:label>
    <link:label id="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Provided by (Used in) Investing Activities, Discontinued Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:to="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryFinishedGoods_cbaef9ef-0a52-46e3-a2a9-358e5f34ab46_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoods" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoods_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoods" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Finished Goods, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoods" xlink:to="lab_us-gaap_InventoryFinishedGoods" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A2019SeniorCreditAgreementMember_8c19ad16-cc75-405a-870e-9117dec2a495_terseLabel_en-US" xlink:label="lab_rock_A2019SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2019 Senior Credit Agreement</link:label>
    <link:label id="lab_rock_A2019SeniorCreditAgreementMember_label_en-US" xlink:label="lab_rock_A2019SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2019 Senior Credit Agreement [Member]</link:label>
    <link:label id="lab_rock_A2019SeniorCreditAgreementMember_documentation_en-US" xlink:label="lab_rock_A2019SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2019 Senior Credit Agreement [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019SeniorCreditAgreementMember" xlink:href="rock-20221231.xsd#rock_A2019SeniorCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A2019SeniorCreditAgreementMember" xlink:to="lab_rock_A2019SeniorCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_e5a0e41f-6b46-41d2-bb1a-80010055280c_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LandBuildingsAndImprovementsMember_8730a3f0-7580-430b-9e28-5deeabb24633_terseLabel_en-US" xlink:label="lab_us-gaap_LandBuildingsAndImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land, Buildings and Improvements</link:label>
    <link:label id="lab_us-gaap_LandBuildingsAndImprovementsMember_label_en-US" xlink:label="lab_us-gaap_LandBuildingsAndImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land, Buildings and Improvements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandBuildingsAndImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandBuildingsAndImprovementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandBuildingsAndImprovementsMember" xlink:to="lab_us-gaap_LandBuildingsAndImprovementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_ee66a900-c5b7-4e4c-b74f-615c8fe91693_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_0d9b7292-557a-4b5f-ab76-dd0968913a3d_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Expected Future Benefit Payment, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_902aeb94-7e61-49b9-a671-6a477a4a995c_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">(Loss) income from discontinued operations (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:to="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_RenewablesAndAgtechMember_9a0e4d86-a93b-4022-961a-e0e48b7404e2_terseLabel_en-US" xlink:label="lab_rock_RenewablesAndAgtechMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Renewables and Agtech</link:label>
    <link:label id="lab_rock_RenewablesAndAgtechMember_label_en-US" xlink:label="lab_rock_RenewablesAndAgtechMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Renewables and Agtech [Member]</link:label>
    <link:label id="lab_rock_RenewablesAndAgtechMember_documentation_en-US" xlink:label="lab_rock_RenewablesAndAgtechMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Renewables and Agtech</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesAndAgtechMember" xlink:href="rock-20221231.xsd#rock_RenewablesAndAgtechMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_RenewablesAndAgtechMember" xlink:to="lab_rock_RenewablesAndAgtechMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_18e91ed6-a127-469e-abfc-b714bc9caae8_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:to="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_NonEmployeeDirectorsPlanMember_bd5a29ad-1c61-4145-9b8e-6f4100c84d98_terseLabel_en-US" xlink:label="lab_rock_NonEmployeeDirectorsPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-Employee Directors Plan</link:label>
    <link:label id="lab_rock_NonEmployeeDirectorsPlanMember_label_en-US" xlink:label="lab_rock_NonEmployeeDirectorsPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-Employee Directors Plan [Member]</link:label>
    <link:label id="lab_rock_NonEmployeeDirectorsPlanMember_documentation_en-US" xlink:label="lab_rock_NonEmployeeDirectorsPlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-Employee Directors Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NonEmployeeDirectorsPlanMember" xlink:href="rock-20221231.xsd#rock_NonEmployeeDirectorsPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_NonEmployeeDirectorsPlanMember" xlink:to="lab_rock_NonEmployeeDirectorsPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringReserveRollForward_b9090391-ba2d-4e33-b655-6bfb06a56016_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserveRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_RestructuringReserveRollForward_label_en-US" xlink:label="lab_us-gaap_RestructuringReserveRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserveRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringReserveRollForward" xlink:to="lab_us-gaap_RestructuringReserveRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_0d8cbd80-5cbe-4a20-a945-2261d3839ae8_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign currency translation</link:label>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Foreign Currency Translation Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:to="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedTranslationAdjustmentMember_baf9f33c-8682-486d-b4dc-fcb0818b9198_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign Currency Translation Adjustment</link:label>
    <link:label id="lab_us-gaap_AccumulatedTranslationAdjustmentMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedTranslationAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:to="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_e9fef3f8-f7d1-4c79-be6e-13c18817802f_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Benefits paid</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Benefit Obligation, Benefits Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:to="lab_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_f1ff48f7-358c-4fd8-93eb-aa0f7fb438b9_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer relationships</link:label>
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_label_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Relationships [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelationshipsMember" xlink:to="lab_us-gaap_CustomerRelationshipsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_e49118fa-ac8f-411e-bd2f-f456618d4c08_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_BacklogMember_a8513249-dde0-4cbf-bdd5-2347c065d42b_terseLabel_en-US" xlink:label="lab_rock_BacklogMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Backlog</link:label>
    <link:label id="lab_rock_BacklogMember_label_en-US" xlink:label="lab_rock_BacklogMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Backlog [Member]</link:label>
    <link:label id="lab_rock_BacklogMember_documentation_en-US" xlink:label="lab_rock_BacklogMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Backlog</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BacklogMember" xlink:href="rock-20221231.xsd#rock_BacklogMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_BacklogMember" xlink:to="lab_rock_BacklogMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_TerraSmartLLCMember_f1a47afc-b6ed-408f-bc65-ae4a2f5d17a6_terseLabel_en-US" xlink:label="lab_rock_TerraSmartLLCMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TerraSmart LLC</link:label>
    <link:label id="lab_rock_TerraSmartLLCMember_label_en-US" xlink:label="lab_rock_TerraSmartLLCMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TerraSmart LLC [Member]</link:label>
    <link:label id="lab_rock_TerraSmartLLCMember_documentation_en-US" xlink:label="lab_rock_TerraSmartLLCMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TerraSmart LLC</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TerraSmartLLCMember" xlink:href="rock-20221231.xsd#rock_TerraSmartLLCMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_TerraSmartLLCMember" xlink:to="lab_rock_TerraSmartLLCMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAbstract_a5df4ceb-2495-4dc3-9851-073d88e3d96d_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:label id="lab_us-gaap_LeasesAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_4c6e5aa9-e794-4ed0-b0c7-cf9ae7dd0758_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, net of operating losses</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_ff796458-0508-47e3-aafa-d5b9f6afe1cb_terseLabel_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principles of consolidation</link:label>
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConsolidationPolicyTextBlock" xlink:to="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_4e78a25b-a763-49ac-ab5f-d1231a8c390c_verboseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Years 2028 - 2032</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Expected Future Benefit Payment, after Year Five for Next Five Years</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_206af81c-f980-4077-8e4b-6a4b28aaeab7_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits_e68aabcf-0797-4552-a946-76d8b77ad296_terseLabel_en-US" xlink:label="lab_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Carrying amount in excess of fair value, number of reporting units</link:label>
    <link:label id="lab_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits_label_en-US" xlink:label="lab_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reporting Unit, Carrying Amount in Excess of Fair Value, Number of Reporting Units</link:label>
    <link:label id="lab_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits_documentation_en-US" xlink:label="lab_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reporting Unit, Carrying Amount in Excess of Fair Value, Number of Reporting Units</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" xlink:href="rock-20221231.xsd#rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" xlink:to="lab_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_7e5e96ae-9184-4c39-af3e-0db996aab540_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_0c6b9cf0-07cc-42f5-b7de-c326229c62bb_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_5f66e60b-da80-485b-8daf-71bfdf0f2a3b_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts_6c743f03-15a2-4dc3-b7f5-fe41544e56b7_terseLabel_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Annual rate of increase in the per capita cost of: Prescription drug costs</link:label>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts_label_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Prescription Drug Costs</link:label>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts_documentation_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Prescription Drug Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" xlink:to="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_2d58b001-75e3-42a0-ada2-8c7791be7727_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired intangible assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_NoncashInterestAdjustment_6ab5766d-0174-4b2d-9f79-b8e95d62e1a2_terseLabel_en-US" xlink:label="lab_rock_NoncashInterestAdjustment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other non-cash adjustments</link:label>
    <link:label id="lab_rock_NoncashInterestAdjustment_label_en-US" xlink:label="lab_rock_NoncashInterestAdjustment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash Interest Adjustment</link:label>
    <link:label id="lab_rock_NoncashInterestAdjustment_documentation_en-US" xlink:label="lab_rock_NoncashInterestAdjustment" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash Interest Adjustment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NoncashInterestAdjustment" xlink:href="rock-20221231.xsd#rock_NoncashInterestAdjustment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_NoncashInterestAdjustment" xlink:to="lab_rock_NoncashInterestAdjustment" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_58616bdd-58e6-4a60-afe2-ca9c7a854911_terseLabel_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]</link:label>
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_label_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:to="lab_srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredFinanceCostsNet_1509c9ff-70e2-421c-83a8-84f7d6626702_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less unamortized debt issuance costs</link:label>
    <link:label id="lab_us-gaap_DeferredFinanceCostsNet_label_en-US" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Issuance Costs, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFinanceCostsNet" xlink:to="lab_us-gaap_DeferredFinanceCostsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_be0c20e6-70ac-42da-aff0-afacfa41cb8a_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorName_cf537348-63a8-45c3-8d90-b0a5bad8d879_terseLabel_en-US" xlink:label="lab_dei_AuditorName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Name</link:label>
    <link:label id="lab_dei_AuditorName_label_en-US" xlink:label="lab_dei_AuditorName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorName" xlink:to="lab_dei_AuditorName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PensionPlansDefinedBenefitMember_c08b356b-203b-4cc7-a8df-fcf2c5942345_terseLabel_en-US" xlink:label="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Multiemployer and other defined benefit and pension plans</link:label>
    <link:label id="lab_us-gaap_PensionPlansDefinedBenefitMember_label_en-US" xlink:label="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionPlansDefinedBenefitMember" xlink:to="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_480cd173-04b7-4a35-aa3e-08689d94dfc7_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_519fb750-115b-4344-b6c3-0c2cf8514882_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, net of operating losses</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwards" xlink:to="lab_us-gaap_OperatingLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_PerformanceSharesMarketConditionMember_31b8f885-f99a-4316-88e9-45ff0ab8caf8_terseLabel_en-US" xlink:label="lab_rock_PerformanceSharesMarketConditionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Shares, Market Condition</link:label>
    <link:label id="lab_rock_PerformanceSharesMarketConditionMember_label_en-US" xlink:label="lab_rock_PerformanceSharesMarketConditionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Shares, Market Condition [Member]</link:label>
    <link:label id="lab_rock_PerformanceSharesMarketConditionMember_documentation_en-US" xlink:label="lab_rock_PerformanceSharesMarketConditionMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Shares, Market Condition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PerformanceSharesMarketConditionMember" xlink:href="rock-20221231.xsd#rock_PerformanceSharesMarketConditionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_PerformanceSharesMarketConditionMember" xlink:to="lab_rock_PerformanceSharesMarketConditionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_53f95114-ebf1-457e-854d-4de590c5e143_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_24c9e0bd-8aa2-449a-a3b5-ed319653325e_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract_573a786e-3f83-4548-a162-171b2935ed8d_terseLabel_en-US" xlink:label="lab_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asset recognized related to incremental costs of obtaining a contract</link:label>
    <link:label id="lab_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract_label_en-US" xlink:label="lab_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Asset, Obtained through Incremental Cost of Obtaining Contract</link:label>
    <link:label id="lab_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract_documentation_en-US" xlink:label="lab_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Asset, Obtained through Incremental Cost of Obtaining Contract</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" xlink:href="rock-20221231.xsd#rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" xlink:to="lab_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DebtInstrumentApplicableRatePeriodDomain_a30ae8ea-7d91-4772-af55-a94e88d163be_terseLabel_en-US" xlink:label="lab_rock_DebtInstrumentApplicableRatePeriodDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Applicable Rate Period [Domain]</link:label>
    <link:label id="lab_rock_DebtInstrumentApplicableRatePeriodDomain_label_en-US" xlink:label="lab_rock_DebtInstrumentApplicableRatePeriodDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Applicable Rate Period [Domain]</link:label>
    <link:label id="lab_rock_DebtInstrumentApplicableRatePeriodDomain_documentation_en-US" xlink:label="lab_rock_DebtInstrumentApplicableRatePeriodDomain" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Applicable Rate Period [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentApplicableRatePeriodDomain" xlink:href="rock-20221231.xsd#rock_DebtInstrumentApplicableRatePeriodDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodDomain" xlink:to="lab_rock_DebtInstrumentApplicableRatePeriodDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ArchitecturalMailboxesLLCMember_f537defc-343b-41df-8b63-13443ebf1a0d_terseLabel_en-US" xlink:label="lab_rock_ArchitecturalMailboxesLLCMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Architectural Mailboxes LLC</link:label>
    <link:label id="lab_rock_ArchitecturalMailboxesLLCMember_label_en-US" xlink:label="lab_rock_ArchitecturalMailboxesLLCMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Architectural Mailboxes LLC [Member]</link:label>
    <link:label id="lab_rock_ArchitecturalMailboxesLLCMember_documentation_en-US" xlink:label="lab_rock_ArchitecturalMailboxesLLCMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Architectural Mailboxes LLC</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ArchitecturalMailboxesLLCMember" xlink:href="rock-20221231.xsd#rock_ArchitecturalMailboxesLLCMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ArchitecturalMailboxesLLCMember" xlink:to="lab_rock_ArchitecturalMailboxesLLCMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOperatingActivitiesSegmentAxis_5965533d-c2d2-4353-8841-90060f7f83c2_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Activities [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementOperatingActivitiesSegmentAxis_label_en-US" xlink:label="lab_us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Activities [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:to="lab_us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_10b8ba03-1619-4472-b5af-8d143e3838da_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Line Items]</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_63c6800e-70ae-4747-ba17-3f5d856b4ab6_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_8b45aff0-b175-4dd4-9740-13329524907d_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign</link:label>
    <link:label id="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Foreign Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ApartmentTourApplicationBusinessMember_ce094b5e-b919-4b56-b231-ff956b9a50df_terseLabel_en-US" xlink:label="lab_rock_ApartmentTourApplicationBusinessMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Apartment Tour Application Business</link:label>
    <link:label id="lab_rock_ApartmentTourApplicationBusinessMember_label_en-US" xlink:label="lab_rock_ApartmentTourApplicationBusinessMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Apartment Tour Application Business [Member]</link:label>
    <link:label id="lab_rock_ApartmentTourApplicationBusinessMember_documentation_en-US" xlink:label="lab_rock_ApartmentTourApplicationBusinessMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Apartment Tour Application Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApartmentTourApplicationBusinessMember" xlink:href="rock-20221231.xsd#rock_ApartmentTourApplicationBusinessMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ApartmentTourApplicationBusinessMember" xlink:to="lab_rock_ApartmentTourApplicationBusinessMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupClassificationAxis_27078b4d-94bd-4c36-8e3a-b04899c1cb88_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Classification [Axis]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupClassificationAxis_label_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Classification [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis" xlink:to="lab_us-gaap_DisposalGroupClassificationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_TitleOfIndividualAxis_4781f0f4-8904-4949-8a0f-398b3b4386b7_terseLabel_en-US" xlink:label="lab_srt_TitleOfIndividualAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:label id="lab_srt_TitleOfIndividualAxis_label_en-US" xlink:label="lab_srt_TitleOfIndividualAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualAxis" xlink:to="lab_srt_TitleOfIndividualAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_d7efd1e5-a89e-4a5b-928d-2d9004ae784b_netLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares awarded (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2be0b72e-51fe-48b4-a86d-e7f0ee3622d3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number&#160;of Awards (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cb4b67bf-ded6-467f-87e1-81d36ec0737b_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_MarketPriceOfCommonStockPerShare_ff8ded44-d1d6-492f-a4ce-663a863ddc86_terseLabel_en-US" xlink:label="lab_rock_MarketPriceOfCommonStockPerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Market price of common stock, per share</link:label>
    <link:label id="lab_rock_MarketPriceOfCommonStockPerShare_label_en-US" xlink:label="lab_rock_MarketPriceOfCommonStockPerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Market Price Of Common Stock Per Share</link:label>
    <link:label id="lab_rock_MarketPriceOfCommonStockPerShare_documentation_en-US" xlink:label="lab_rock_MarketPriceOfCommonStockPerShare" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Market price of common stock per share.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_MarketPriceOfCommonStockPerShare" xlink:href="rock-20221231.xsd#rock_MarketPriceOfCommonStockPerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_MarketPriceOfCommonStockPerShare" xlink:to="lab_rock_MarketPriceOfCommonStockPerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_8c2e1107-e2f6-4b63-a8ec-121278e1f069_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock units</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_5273b19a-da43-4fc1-ac15-9293aeb08afd_totalLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective income tax rate, percentage</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_5be38af1-27f4-4ce9-933b-523a74414da2_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax_2e4e91a6-3dd2-4eb4-bca3-f6f367d4ed01_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated pre-tax loss</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operation, Gain (Loss) from Disposal of Discontinued Operation, before Income Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax" xlink:to="lab_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UseOfEstimates_6b512273-ebe2-41b4-817c-f8a19f865679_terseLabel_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of estimates</link:label>
    <link:label id="lab_us-gaap_UseOfEstimates_label_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates" xlink:to="lab_us-gaap_UseOfEstimates" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_6a3c616c-62be-48ac-8ca7-2797f6501235_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisitions</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrent_0e1e2564-542d-43c0-852d-c1b919cdc4cd_verboseLabel_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest and taxes</link:label>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Insurance, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedInsuranceCurrent" xlink:to="lab_us-gaap_AccruedInsuranceCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_61078c3c-9e18-48f4-a299-64064ed13e2b_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive (loss) income:</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryRawMaterials_59db0047-cdee-4b25-86d0-2e76c0dc4948_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterials" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Raw material</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterials_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterials" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Raw Materials, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterials" xlink:to="lab_us-gaap_InventoryRawMaterials" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_31d4d25a-88a2-4794-a574-fc56aa682d69_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_12170a48-356d-4dd6-9f26-3dbcc6c8eb70_terseLabel_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIBOR</link:label>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_label_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">London Interbank Offered Rate (LIBOR) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:to="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock_f9d173a9-36d5-4b0a-b686-0a8e62ba5baa_terseLabel_en-US" xlink:label="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension and Other Postretirement Benefits</link:label>
    <link:label id="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Postemployment Benefits Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:to="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_7bcbfa89-4b68-4686-b107-83dc7e1df864_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentrations of credit risk</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskPercentage1" xlink:to="lab_us-gaap_ConcentrationRiskPercentage1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Revenues_029e8120-79e2-4048-8361-30d6b6dd4d22_terseLabel_en-US" xlink:label="lab_us-gaap_Revenues" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net sales:</link:label>
    <link:label id="lab_us-gaap_Revenues_label_en-US" xlink:label="lab_us-gaap_Revenues" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Revenues" xlink:to="lab_us-gaap_Revenues" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_687a99df-647d-4500-9806-0f884d03b0b5_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting, Other Significant Reconciling Item [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting, Other Significant Reconciling Item [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems" xlink:to="lab_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_c86f4d99-b3d8-4761-aba8-920b776e348d_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PostemploymentBenefitsPeriodExpense_ce2ea83d-4de8-4540-9046-047cd487677f_terseLabel_en-US" xlink:label="lab_us-gaap_PostemploymentBenefitsPeriodExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total retirement plan expense</link:label>
    <link:label id="lab_us-gaap_PostemploymentBenefitsPeriodExpense_label_en-US" xlink:label="lab_us-gaap_PostemploymentBenefitsPeriodExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Postemployment Benefits, Period Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PostemploymentBenefitsPeriodExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsPeriodExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PostemploymentBenefitsPeriodExpense" xlink:to="lab_us-gaap_PostemploymentBenefitsPeriodExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_deac0d44-0643-4478-ab83-e2f1b68eb81e_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_34866af0-1381-4918-86dc-56dd32633194_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income from continuing operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_a6fdc242-11d0-4fee-81c9-813d470c0764_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income from continuing operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_ea5ac5ed-df45-49f2-b430-2ccbec2bd02e_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income from continuing operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperations" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_379de3d6-8b67-4423-b0c5-67f81511ffaf_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred State and Local Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_dd24fe90-4df4-4117-8d4c-47e3c28cacd7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock units credited (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Granted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_67c0faec-afcd-4a4d-89ce-19f760d152ea_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityDomain_label_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain" xlink:to="lab_us-gaap_CreditFacilityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1_4491ea53-b655-4b95-8379-73f431d589a3_terseLabel_en-US" xlink:label="lab_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seller note principal amount</link:label>
    <link:label id="lab_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1_label_en-US" xlink:label="lab_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash or Part Noncash Divestiture, Amount of Consideration Received</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1" xlink:to="lab_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_8f27f944-0449-4268-9e66-28022a1d2369_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestPaidNet_5c98a252-8078-4223-86fa-da2da5f0b0c8_terseLabel_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash paid for interest</link:label>
    <link:label id="lab_us-gaap_InterestPaidNet_label_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet" xlink:to="lab_us-gaap_InterestPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_7b1b1991-8c87-400a-bd81-8bcb34b0b9f4_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Changes in Carrying Amount of Goodwill</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_bf486e1c-5d1e-498b-ac9c-5a6991b5f626_totalLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_ee89179f-6212-4d39-8833-60a6227f6c92_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant, and equipment, net</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Property, Plant and Equipment, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8d4e5891-8101-4279-a85d-bfd57e232264_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ExtinguishmentOfDebtLineItems_b46250de-9b85-44ee-a016-d322076d33c6_terseLabel_en-US" xlink:label="lab_us-gaap_ExtinguishmentOfDebtLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Extinguishment of Debt [Line Items]</link:label>
    <link:label id="lab_us-gaap_ExtinguishmentOfDebtLineItems_label_en-US" xlink:label="lab_us-gaap_ExtinguishmentOfDebtLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Extinguishment of Debt [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ExtinguishmentOfDebtLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ExtinguishmentOfDebtLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ExtinguishmentOfDebtLineItems" xlink:to="lab_us-gaap_ExtinguishmentOfDebtLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_03bef297-b063-4244-868e-cd45ee573b31_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan Disclosure [Line Items]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan Disclosure [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConstructionInProgressGross_14fddbbd-8a32-4519-ba8a-155b5650255a_verboseLabel_en-US" xlink:label="lab_us-gaap_ConstructionInProgressGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Construction in progress</link:label>
    <link:label id="lab_us-gaap_ConstructionInProgressGross_label_en-US" xlink:label="lab_us-gaap_ConstructionInProgressGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Construction in Progress, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConstructionInProgressGross" xlink:to="lab_us-gaap_ConstructionInProgressGross" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ContractsReceivableGrossCurrent_bd369252-992c-46f7-84c7-361fa6bb3304_totalLabel_en-US" xlink:label="lab_rock_ContractsReceivableGrossCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total contract receivables</link:label>
    <link:label id="lab_rock_ContractsReceivableGrossCurrent_label_en-US" xlink:label="lab_rock_ContractsReceivableGrossCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contracts Receivable, Gross, Current</link:label>
    <link:label id="lab_rock_ContractsReceivableGrossCurrent_documentation_en-US" xlink:label="lab_rock_ContractsReceivableGrossCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contracts Receivable, Gross, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractsReceivableGrossCurrent" xlink:href="rock-20221231.xsd#rock_ContractsReceivableGrossCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ContractsReceivableGrossCurrent" xlink:to="lab_rock_ContractsReceivableGrossCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_36abe7ce-9858-4ac9-a801-a6843ae01e1b_terseLabel_en-US" xlink:label="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues from External Customers and Long-Lived Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues from External Customers and Long-Lived Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_560317d1-1d04-42e4-9614-1066573d4343_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Grant date fair value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_074f5db2-1705-483c-9091-69620477670b_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities held for sale</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_label_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_a4b07edf-e4f0-49ba-ba98-43aff3492bdb_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate</link:label>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_120f4082-77b9-41bc-a0ed-e44cfc783d8f_verboseLabel_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unallocated Corporate Expenses</link:label>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_label_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate, Non-Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateNonSegmentMember" xlink:to="lab_us-gaap_CorporateNonSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_99713e9a-2594-4f2b-94e7-39f7ff985ae8_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum post retirement benefit plan adjustments</link:label>
    <link:label id="lab_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:to="lab_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_6495d95b-045b-48d6-8166-539278ddd3e8_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued operations:</link:label>
    <link:label id="lab_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_label_en-US" xlink:label="lab_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLossAttributableToReportingEntityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract" xlink:to="lab_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryPolicyTextBlock_5ba78341-fdf6-4be1-82e9-975b590239b5_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryPolicyTextBlock" xlink:to="lab_us-gaap_InventoryPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_bc16dd48-a200-4fb0-b6e0-ea3e97416959_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_89882376-68f9-4c81-bf8b-1f9845220566_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:to="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockMember_fd7bb0cc-a5d6-447a-b83b-daf9ec16b9e1_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock</link:label>
    <link:label id="lab_us-gaap_TreasuryStockMember_label_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockMember" xlink:to="lab_us-gaap_TreasuryStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_808f0437-1cc3-4139-837a-96895a0a6e6e_terseLabel_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-lived Intangible Assets [Axis]</link:label>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_label_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-Lived Intangible Assets [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_0bf952c4-be68-467b-8ddc-cf347ccead82_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_64bf48d4-6d9f-4395-a682-150a530514db_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_d27eea09-dc34-4b96-891b-8048af38f2a6_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_0e4298be-bbe9-4658-bdeb-3936d6c5e7ee_verboseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative effect of new accounting principle in period of adoption</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_553f23f0-dae3-4fff-aed3-e5b5e04d41d7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DeferredTaxAssetsCapitalLossCarryfowards_0bd580a5-f68c-4fe4-9d25-9024de373ce7_terseLabel_en-US" xlink:label="lab_rock_DeferredTaxAssetsCapitalLossCarryfowards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, capital loss carryforwards</link:label>
    <link:label id="lab_rock_DeferredTaxAssetsCapitalLossCarryfowards_label_en-US" xlink:label="lab_rock_DeferredTaxAssetsCapitalLossCarryfowards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Capital Loss Carryfowards</link:label>
    <link:label id="lab_rock_DeferredTaxAssetsCapitalLossCarryfowards_documentation_en-US" xlink:label="lab_rock_DeferredTaxAssetsCapitalLossCarryfowards" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Capital Loss Carryfowards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredTaxAssetsCapitalLossCarryfowards" xlink:href="rock-20221231.xsd#rock_DeferredTaxAssetsCapitalLossCarryfowards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DeferredTaxAssetsCapitalLossCarryfowards" xlink:to="lab_rock_DeferredTaxAssetsCapitalLossCarryfowards" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOther_e1ab4d87-f9c4-4449-9ed4-5c80f5ffaf2f_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOther" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOther_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOther" xlink:to="lab_us-gaap_DeferredTaxAssetsOther" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_1d38db4a-68ed-424f-96c7-885d454a201a_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_df953a60-48da-448d-9daa-2ddb5866aca7_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Amortization, Finite-lived intangible assets</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_6740e3b9-b97c-4949-9af6-5820ff0dad28_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Changes in operating assets and liabilities (excluding the effects of acquisitions):</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_8552a8cc-cc97-4fa1-96a3-f865469f5b21_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardDateDomain_7821d5f5-ee7d-4879-88d8-5eb7cb106f26_terseLabel_en-US" xlink:label="lab_us-gaap_AwardDateDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Date [Domain]</link:label>
    <link:label id="lab_us-gaap_AwardDateDomain_label_en-US" xlink:label="lab_us-gaap_AwardDateDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Date [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardDateDomain" xlink:to="lab_us-gaap_AwardDateDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_f307e1fe-0b98-40ab-ab4d-a4a5a1513d79_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_270b2ad6-2640-4bd4-8269-7616ec020752_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease cost</link:label>
    <link:label id="lab_us-gaap_LeaseCost_label_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost" xlink:to="lab_us-gaap_LeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_TwoThousandEighteenEquityIncentivePlanMember_4a3fa575-f269-460f-813e-266f57d24649_terseLabel_en-US" xlink:label="lab_rock_TwoThousandEighteenEquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2015 Equity Incentive Plan</link:label>
    <link:label id="lab_rock_TwoThousandEighteenEquityIncentivePlanMember_label_en-US" xlink:label="lab_rock_TwoThousandEighteenEquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Two Thousand Eighteen Equity Incentive Plan [Member]</link:label>
    <link:label id="lab_rock_TwoThousandEighteenEquityIncentivePlanMember_documentation_en-US" xlink:label="lab_rock_TwoThousandEighteenEquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Two Thousand Eighteen Equity Incentive Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandEighteenEquityIncentivePlanMember" xlink:href="rock-20221231.xsd#rock_TwoThousandEighteenEquityIncentivePlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_TwoThousandEighteenEquityIncentivePlanMember" xlink:to="lab_rock_TwoThousandEighteenEquityIncentivePlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_a757850e-8a6e-4f58-ac45-aa70295d3664_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_BillingsinExcessofCostMember_329ec29d-9a13-4e95-950d-728b72371345_terseLabel_en-US" xlink:label="lab_rock_BillingsinExcessofCostMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billings in excess of cost</link:label>
    <link:label id="lab_rock_BillingsinExcessofCostMember_label_en-US" xlink:label="lab_rock_BillingsinExcessofCostMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billings in Excess of Cost [Member]</link:label>
    <link:label id="lab_rock_BillingsinExcessofCostMember_documentation_en-US" xlink:label="lab_rock_BillingsinExcessofCostMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billings in Excess of Cost [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BillingsinExcessofCostMember" xlink:href="rock-20221231.xsd#rock_BillingsinExcessofCostMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_BillingsinExcessofCostMember" xlink:to="lab_rock_BillingsinExcessofCostMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_8d0075aa-1d37-4614-81d4-87810b6cfcdf_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of reportable segments</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments" xlink:to="lab_us-gaap_NumberOfReportableSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_48b17c67-b179-4fc4-9487-b2a36fca132e_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock" xlink:to="lab_us-gaap_LeaseCostTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_eb409626-8599-4c3e-9abf-60f85e3d5b8f_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of common stock at market prices</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_0422918b-36f4-4ced-8052-e880a0298543_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of shares available for issuance under the Plan</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_86dcd9e1-68c5-4711-a812-1587c5805e2a_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxPolicyTextBlock" xlink:to="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_7abd5c88-d3fc-495f-b8f0-c7a6ebb8f961_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems" xlink:to="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_1f11320d-2e93-4706-b771-989b85289aa8_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_c692d2dc-4678-4c63-b785-8e83ff94e54d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Discontinued Operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:to="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_a5d16a68-d314-4e4b-8e4d-8715b6b45f99_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_4e6d6033-3c5d-4e3f-9163-236c654d259c_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease renewal term</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Renewal Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:to="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operations and Disposal Groups [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_a3e3170c-db4e-48dd-b0be-3dd156a02e3f_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_5ac44285-cab7-495a-a207-e67b8303b24c_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest and penalties recognized</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_f5b7495b-9b0e-46ea-83c1-1067debf0cfe_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-current operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_55390e0c-eb0f-418e-9ca7-676b8d7c81d8_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-current operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_11c02229-658c-4d4b-8c8d-13b25625fd33_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Held-for-sale, Not Discontinued Operations</link:label>
    <link:label id="lab_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_label_en-US" xlink:label="lab_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Held-for-sale, Not Discontinued Operations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:to="lab_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_adc510ff-72dd-4c28-b80a-b4c4d3a938c6_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossBeforeTax_075964e0-c008-4a81-8327-06d8ace5b7ac_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), before Tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossBeforeTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_4b0d180f-c0e6-40fc-a0d3-2d31f5e07b2c_terseLabel_en-US" xlink:label="lab_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc.</link:label>
    <link:label id="lab_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_label_en-US" xlink:label="lab_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. [Member]</link:label>
    <link:label id="lab_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_documentation_en-US" xlink:label="lab_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" xlink:href="rock-20221231.xsd#rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" xlink:to="lab_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_4a489092-7c74-4744-9671-efb3750ac0d0_verboseLabel_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Carrying Amount, Indefinite-lived intangible assets</link:label>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-Lived Intangible Assets (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_33ec0111-1a17-429e-a09f-dc80e7a619a4_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_384f8af3-0892-435f-825d-5d426cf5e900_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Name [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_fa9b0d90-9085-4ad9-bdd5-23934244e9f4_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, net of allowance of $3,746 and $3,738, respectively</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_43d4c541-d07b-4284-baca-10809a6ecd7c_totalLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_b5e40132-5c9e-4170-bf2b-fc288fefc800_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_5955e792-59f3-4bee-925b-44c922339251_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock_1dd81309-3db4-404f-822f-84025401e525_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amounts Recognized in the Consolidated Financial Statements</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Amounts Recognized in Balance Sheet [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_87f05f56-bfa2-4ba2-85a9-2ae4350b2b26_terseLabel_en-US" xlink:label="lab_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expense recognized under the Prior Plan</link:label>
    <link:label id="lab_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_label_en-US" xlink:label="lab_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Compensation Expense Recognized Under Terminated Plans</link:label>
    <link:label id="lab_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_documentation_en-US" xlink:label="lab_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation expense recognized under terminated plans.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderTerminatedPlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans" xlink:to="lab_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TrademarksMember_bcc700f8-bc08-48e3-806b-8998ba1e4eec_terseLabel_en-US" xlink:label="lab_us-gaap_TrademarksMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trademarks</link:label>
    <link:label id="lab_us-gaap_TrademarksMember_label_en-US" xlink:label="lab_us-gaap_TrademarksMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trademarks [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksMember" xlink:to="lab_us-gaap_TrademarksMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_c18ff817-cd86-4165-81a7-86d69a4e15f6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_68dbf522-243d-4d19-8915-82382ce484d7_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingPolicyPolicyTextBlock_af539365-be6a-4dca-831d-131c4ba5c3bb_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting</link:label>
    <link:label id="lab_us-gaap_SegmentReportingPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:to="lab_us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_a84dc4ef-fab6-4270-a1f8-0e2488d9d7da_terseLabel_en-US" xlink:label="lab_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Working capital</link:label>
    <link:label id="lab_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_label_en-US" xlink:label="lab_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Working Capital</link:label>
    <link:label id="lab_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_documentation_en-US" xlink:label="lab_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Working Capital</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" xlink:href="rock-20221231.xsd#rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" xlink:to="lab_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_a050125d-54d9-4864-a18a-ce8701700798_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_e35c5949-c486-4421-a77b-833694600ba9_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Intangible Assets Amortization Expense</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_ec0f85de-15d6-4dfb-8198-4b1cd381df1f_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Acquired Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_3de9a19f-bd4a-45c2-acae-1002f54551b1_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Flows from Operating Activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AccruedExpensesCurrentMember_64a734b5-0393-42f5-ae7c-306ba24e27b8_terseLabel_en-US" xlink:label="lab_rock_AccruedExpensesCurrentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Expenses, Current</link:label>
    <link:label id="lab_rock_AccruedExpensesCurrentMember_label_en-US" xlink:label="lab_rock_AccruedExpensesCurrentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Expenses, Current [Member]</link:label>
    <link:label id="lab_rock_AccruedExpensesCurrentMember_documentation_en-US" xlink:label="lab_rock_AccruedExpensesCurrentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Expenses, Current [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedExpensesCurrentMember" xlink:href="rock-20221231.xsd#rock_AccruedExpensesCurrentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AccruedExpensesCurrentMember" xlink:to="lab_rock_AccruedExpensesCurrentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_InventoryRollForward_cdefb5d8-57e3-4708-8960-b8fa45ea024c_terseLabel_en-US" xlink:label="lab_rock_InventoryRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory [Roll Forward]</link:label>
    <link:label id="lab_rock_InventoryRollForward_label_en-US" xlink:label="lab_rock_InventoryRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory [Roll Forward]</link:label>
    <link:label id="lab_rock_InventoryRollForward_documentation_en-US" xlink:label="lab_rock_InventoryRollForward" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InventoryRollForward" xlink:href="rock-20221231.xsd#rock_InventoryRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_InventoryRollForward" xlink:to="lab_rock_InventoryRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_a2459e29-78aa-48ee-bd43-2d5cf184326d_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_266a0e09-08d5-48fd-82c1-72add6bcb62f_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net proceeds of sale of business</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_e545b4ec-e1a2-4467-b9be-66d42e16d037_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized research and development costs</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, in Process Research and Development</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:to="lab_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_ba0ed5a5-acab-465f-a6c1-25deb60c4f9c_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance stock units outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f27c27aa-9e23-40cb-b985-71038f4abfa6_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_69c51c33-8b4c-4d43-9ea8-4d7445e604fb_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredChargesPolicyTextBlock_c0275ca5-9dd7-4ba8-91a4-788ac35f0a92_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredChargesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred charges</link:label>
    <link:label id="lab_us-gaap_DeferredChargesPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_DeferredChargesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Charges, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredChargesPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredChargesPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredChargesPolicyTextBlock" xlink:to="lab_us-gaap_DeferredChargesPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateDomain_c6c2f51f-5173-4f21-a080-598b2c355931_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:label id="lab_us-gaap_VariableRateDomain_label_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateDomain" xlink:to="lab_us-gaap_VariableRateDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_1d8ed53e-01ff-4b69-b715-7ee5b0c0dc03_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_95447dcd-71d4-4589-b15a-947acae42173_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Carrying Amount, Finite-lived intangible assets</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock_903ab186-01eb-4896-9f20-10514dbabf5c_verboseLabel_en-US" xlink:label="lab_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">(Benefit of) Provision for Income Taxes from Discontinued Operations</link:label>
    <link:label id="lab_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock_label_en-US" xlink:label="lab_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Components Of Income Tax Expense Benefit For Discontinued Operations [Table Text Block]</link:label>
    <link:label id="lab_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock_documentation_en-US" xlink:label="lab_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Components Of Income Tax Expense Benefit For Discontinued Operations.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" xlink:href="rock-20221231.xsd#rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" xlink:to="lab_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_a2dac10f-7d87-474a-9734-84bc5dc8ce03_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general, and administrative expense</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_b1cc698e-6b4b-4c1c-9026-05bb8dca0924_totalLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_fc89fd93-863e-4537-9dec-53d2589e1f64_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodValue_7116ce04-085d-4ad6-ac2f-9743e9134eff_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodValue" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock repurchased under stock repurchase program</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodValue_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Repurchased During Period, Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_1e1a8c5b-c755-4ac3-aada-1d1d155c833d_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive (Loss) Income</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_RenewablesMember_0ef0ccce-2fd1-4398-9d7a-67d1ad9b65c7_terseLabel_en-US" xlink:label="lab_rock_RenewablesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Renewables</link:label>
    <link:label id="lab_rock_RenewablesMember_label_en-US" xlink:label="lab_rock_RenewablesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Renewables [Member]</link:label>
    <link:label id="lab_rock_RenewablesMember_documentation_en-US" xlink:label="lab_rock_RenewablesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Renewables</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_RenewablesMember" xlink:to="lab_rock_RenewablesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNoteTextBlock_aff10a3e-a015-48c0-bc64-76bf13295091_verboseLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss)</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNoteTextBlock_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss) Note [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:to="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ExercisePriceRangeOneMember_5d4faf46-4a9b-4892-86b4-f2b18497c010_terseLabel_en-US" xlink:label="lab_rock_ExercisePriceRangeOneMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">$39.55</link:label>
    <link:label id="lab_rock_ExercisePriceRangeOneMember_label_en-US" xlink:label="lab_rock_ExercisePriceRangeOneMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price Range One [Member]</link:label>
    <link:label id="lab_rock_ExercisePriceRangeOneMember_documentation_en-US" xlink:label="lab_rock_ExercisePriceRangeOneMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price Range One [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ExercisePriceRangeOneMember" xlink:href="rock-20221231.xsd#rock_ExercisePriceRangeOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ExercisePriceRangeOneMember" xlink:to="lab_rock_ExercisePriceRangeOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_6bf377d4-4be8-4cd4-985e-31ebe2c6d52d_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of long-lived assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorFirmId_22f10ebf-795a-4e6c-8366-e8a9af6d7461_terseLabel_en-US" xlink:label="lab_dei_AuditorFirmId" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Firm ID</link:label>
    <link:label id="lab_dei_AuditorFirmId_label_en-US" xlink:label="lab_dei_AuditorFirmId" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Firm ID</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorFirmId" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorFirmId" xlink:to="lab_dei_AuditorFirmId" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDiscontinuedOperationsMember_db94a6b5-4c5d-4602-8178-8fc0fe7cb7b8_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentDiscontinuedOperationsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operations</link:label>
    <link:label id="lab_us-gaap_SegmentDiscontinuedOperationsMember_label_en-US" xlink:label="lab_us-gaap_SegmentDiscontinuedOperationsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDiscontinuedOperationsMember" xlink:to="lab_us-gaap_SegmentDiscontinuedOperationsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TypeOfRestructuringDomain_abac3d55-e459-444d-b211-d66da952778f_terseLabel_en-US" xlink:label="lab_us-gaap_TypeOfRestructuringDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Type of Restructuring [Domain]</link:label>
    <link:label id="lab_us-gaap_TypeOfRestructuringDomain_label_en-US" xlink:label="lab_us-gaap_TypeOfRestructuringDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Type of Restructuring [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfRestructuringDomain" xlink:to="lab_us-gaap_TypeOfRestructuringDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SeniorCreditAgreementMember_2cc1cf6b-70f8-4ff6-9d5f-8301af112615_terseLabel_en-US" xlink:label="lab_rock_SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Credit Agreement</link:label>
    <link:label id="lab_rock_SeniorCreditAgreementMember_label_en-US" xlink:label="lab_rock_SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Credit Agreement [Member]</link:label>
    <link:label id="lab_rock_SeniorCreditAgreementMember_documentation_en-US" xlink:label="lab_rock_SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Credit Agreement [Member].</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SeniorCreditAgreementMember" xlink:href="rock-20221231.xsd#rock_SeniorCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SeniorCreditAgreementMember" xlink:to="lab_rock_SeniorCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_15a80e87-6276-4f46-a43f-966160c805be_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCountryMember_e6fe2cee-7542-4ed0-b3b7-1e7bcbf65894_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCountryMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign Tax Authority</link:label>
    <link:label id="lab_us-gaap_ForeignCountryMember_label_en-US" xlink:label="lab_us-gaap_ForeignCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign Tax Authority [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCountryMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCountryMember" xlink:to="lab_us-gaap_ForeignCountryMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_04dc7f81-dd5e-45cb-91bb-b10703b09e83_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Expected Future Benefit Payment, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_7f76eb7b-9d83-4b37-8493-f9bc6723b0f2_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_b935024e-9987-4b03-bf73-cd1174835f47_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Excess tax benefit on stock based compensation</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_55336143-d5cd-44b4-9bf2-e6cb4c7293b8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Stock Options Transactions</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_5d335092-41c9-4f59-b931-354d53dbc10a_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income from operations</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_c5229580-0887-4c61-a2f6-f8f54915d21c_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income from operations:</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_8c85fa97-6f02-43af-93f3-d41b35767ff8_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_0f6612e4-03bb-4b30-ba0f-5c6eba32ba7b_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recent accounting pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_003e3885-da36-4e3e-a39c-fbc5590e62ae_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity compensation</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_93d949bd-e147-4c88-ad38-39a2ec5ec47b_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Current Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_109485f3-a0e1-4952-9a15-222e64a7f998_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operations, Disposed of by Sale</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operations, Disposed of by Sale [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:to="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_c6a4d51c-3061-4b44-a47f-9216f757879b_terseLabel_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_label_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State and Local Jurisdiction [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StateAndLocalJurisdictionMember" xlink:to="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_352be066-bf6c-47c9-afb6-767f0a88b9d8_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding" xlink:to="lab_us-gaap_CommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryGross_8686efe5-5cde-413f-ae24-0802db336afa_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryGross" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross inventory</link:label>
    <link:label id="lab_us-gaap_InventoryGross_label_en-US" xlink:label="lab_us-gaap_InventoryGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryGross" xlink:to="lab_us-gaap_InventoryGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Goodwill_bb7bf97c-ba90-4f2e-b8f2-570f0b2b24dc_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_9730ba70-32e1-4ea7-97bd-4eec5f52298b_periodStartLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at</link:label>
    <link:label id="lab_us-gaap_Goodwill_9a0cc794-a42d-4a32-82b7-146954c9c582_periodEndLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at</link:label>
    <link:label id="lab_us-gaap_Goodwill_label_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetImpairment_931f0c6b-dd52-4281-93ce-f2f343a176da_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible asset impairment</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetImpairment_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Asset Impairment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_590a684a-6b7e-45a9-bdb8-0377a379db98_verboseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_e3f92670-edcd-4893-952f-c46660016aac_totalLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operation, Tax Effect of Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:to="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65_cf5dcc5c-f697-4d13-9628-91f7a31f87fc_terseLabel_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Annual rate of increase in the per capita cost of: Medical costs before age 65</link:label>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65_label_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs Before Age 65</link:label>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65_documentation_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs Before Age 65</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" xlink:to="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockShares_fad9e26c-8450-488f-9e38-5b33f8cbff18_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock, shares (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockShares_label_en-US" xlink:label="lab_us-gaap_TreasuryStockShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockShares" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockShares" xlink:to="lab_us-gaap_TreasuryStockShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_b0e44382-c0b8-4d25-8f96-1b875800565a_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_803665b8-e0ef-46c0-8831-a15af9c72a18_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodShares" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock repurchased under stock repurchase program (in shares)</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Repurchased During Period, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodShares" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefinitelivedIntangibleAssetsAcquired_c7f68523-ce67-4162-bf90-6964ac296987_terseLabel_en-US" xlink:label="lab_us-gaap_IndefinitelivedIntangibleAssetsAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair&#160;Value</link:label>
    <link:label id="lab_us-gaap_IndefinitelivedIntangibleAssetsAcquired_label_en-US" xlink:label="lab_us-gaap_IndefinitelivedIntangibleAssetsAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-Lived Intangible Assets Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefinitelivedIntangibleAssetsAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefinitelivedIntangibleAssetsAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefinitelivedIntangibleAssetsAcquired" xlink:to="lab_us-gaap_IndefinitelivedIntangibleAssetsAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_640e2f8f-d276-41b5-898d-6f6829865e63_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SunfigCorporationMember_b5920c48-de5b-4cbc-83ca-d4d95210e6cc_terseLabel_en-US" xlink:label="lab_rock_SunfigCorporationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sunfig Corporation</link:label>
    <link:label id="lab_rock_SunfigCorporationMember_label_en-US" xlink:label="lab_rock_SunfigCorporationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sunfig Corporation [Member]</link:label>
    <link:label id="lab_rock_SunfigCorporationMember_documentation_en-US" xlink:label="lab_rock_SunfigCorporationMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sunfig Corporation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationMember" xlink:href="rock-20221231.xsd#rock_SunfigCorporationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SunfigCorporationMember" xlink:to="lab_rock_SunfigCorporationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_f5d31fdb-56dc-494f-8ca2-477f4196ed44_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Related Intangible Assets</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_1a857ec7-a42d-4579-bbff-7d295ea65bf1_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_61a30a95-b761-43ec-98a0-c873df488be9_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_SegmentGeographicalDomain_c9d15af1-3d3d-40b1-bfa4-4974598736d8_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_srt_SegmentGeographicalDomain_label_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain" xlink:to="lab_srt_SegmentGeographicalDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_7e17481e-7314-493e-a64c-7cc5a7ecb9e0_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Valuation allowances</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_b5347e87-679a-4ce9-9d89-912ad78b764d_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant, and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_768a3f0f-4dc9-488a-80db-687736d96676_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_f4eb3631-4642-435c-9f35-305237aa3297_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_644fadcf-4e8f-4f56-aaed-f3aedd4e297b_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_affbf3a5-9c58-4722-9503-7f003240f197_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_25fb129c-1cdf-4500-9e93-0d8f00ac9cfa_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityPublicFloat_6e47da00-abf4-4260-b41e-e5348870489d_terseLabel_en-US" xlink:label="lab_dei_EntityPublicFloat" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Public Float</link:label>
    <link:label id="lab_dei_EntityPublicFloat_label_en-US" xlink:label="lab_dei_EntityPublicFloat" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Public Float</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityPublicFloat" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityPublicFloat" xlink:to="lab_dei_EntityPublicFloat" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_5be82de7-140e-4642-8f8f-602b1aacbe3c_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">U.S. Federal</link:label>
    <link:label id="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Federal Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_0427e77d-f339-4375-b14c-0a6e77b2e445_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-In Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_061b8dcf-d944-435f-a9f1-b498325ed3b4_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationDomain" xlink:to="lab_us-gaap_BalanceSheetLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_8d8bff47-5c6d-42f0-935c-69f9ca61fc58_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_89720471-fc49-417a-9789-03493347f7da_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate intrinsic value of options exercised</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_e5cf8695-3eff-4b38-aa7f-1b7eb0a6bf57_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares outstanding &#8211; Diluted (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_49f4a131-cac6-4213-b9bc-b90508bbfbce_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares and conversions (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_39ae519f-5449-41ae-84ab-2c9fd95e51d5_negatedLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: accumulated depreciation</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_9c6f493f-d49e-46b2-b5a5-d534784240f7_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Inventories</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_0381ad0d-8a14-4945-9a80-7bbacb18883e_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Expected Future Benefit Payment, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableMember_85aac943-f1e4-4ec6-9c15-79271416f0ce_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableMember_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableMember" xlink:to="lab_us-gaap_AccountsReceivableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_9b93c117-11b9-4d3d-b79b-8b2ba0566d68_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_IcfrAuditorAttestationFlag_248b8108-e778-478d-a700-5730d7c43e8a_terseLabel_en-US" xlink:label="lab_dei_IcfrAuditorAttestationFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
    <link:label id="lab_dei_IcfrAuditorAttestationFlag_label_en-US" xlink:label="lab_dei_IcfrAuditorAttestationFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_IcfrAuditorAttestationFlag" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_IcfrAuditorAttestationFlag" xlink:to="lab_dei_IcfrAuditorAttestationFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BaseRateMember_e01c8026-07f5-45dc-bea0-36409d3c54e3_terseLabel_en-US" xlink:label="lab_us-gaap_BaseRateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Base Rate</link:label>
    <link:label id="lab_us-gaap_BaseRateMember_label_en-US" xlink:label="lab_us-gaap_BaseRateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Base Rate [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BaseRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BaseRateMember" xlink:to="lab_us-gaap_BaseRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_01c6cb62-1df6-410a-91d9-0ed5cda48b8c_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, $0.01 par value; authorized 100,000 shares; 34,060 and 33,799 shares issued and outstanding in 2022 and 2021</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_label_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_a15cd8a0-6354-4771-9b0d-ebfd43f5ba6f_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">(Loss) income from discontinued operations (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:to="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_7dfed9cd-9713-4af9-88f9-9017ddada8e0_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_1498b225-8a15-4ee6-981a-18d73b292041_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember_8df0d963-0062-4778-9157-153a19dc5ef4_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operations, Held-for-sale</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operations, Held-for-sale [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:to="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_b347221a-0af3-40b3-8f17-ded62e1e76c0_netLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Grant&#160;Date Fair Value (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_45fdb9ab-bdc6-4940-8485-f5119c5a6a59_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_f0292406-925c-4d41-9afb-75104c1bc418_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="lab_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_05c2d356-20a1-4359-8642-af9dafe0d8ef_terseLabel_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued post retirement liability: Current portion</link:label>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_label_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liability, Defined Benefit Plan, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" xlink:to="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_486631f9-f2b3-475d-b7ee-73ec069716fa_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments</link:label>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_label_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember" xlink:to="lab_us-gaap_OperatingSegmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_872b0055-3224-4059-a93c-980e8a5eaa9f_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term lease cost</link:label>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_label_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-Term Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermLeaseCost" xlink:to="lab_us-gaap_ShortTermLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherIncome_ebe6132d-ea3b-40b1-8131-8269909f859b_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherIncome" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other expense (income)</link:label>
    <link:label id="lab_us-gaap_OtherIncome_label_en-US" xlink:label="lab_us-gaap_OtherIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherIncome" xlink:to="lab_us-gaap_OtherIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_655792fe-d03d-4b04-b821-8184371162b3_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_728f654d-2e9a-4d27-b738-88e2596b166c_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents at beginning of year</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_c8a3b177-9504-4648-883f-a6823072cf62_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents at end of year</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_64871cf3-d082-47cf-b96b-0bb6768ebe95_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign currency translation adjustment</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_c3e50461-8f51-47b8-84be-924dca8152ff_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Foreign</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_3120a1df-71d5-47dd-8413-c74951da92cd_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_334e746e-690a-463b-99d3-eb35e7ede387_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated impairment losses</link:label>
    <link:label id="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Impaired, Accumulated Impairment Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:to="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_dc47093f-e7ee-4a63-85bd-fd2e38c7fc1f_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement_343b7dd1-01c7-4604-aaa4-0765747a2583_negatedTerseLabel_en-US" xlink:label="lab_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net settlement of restricted stock units</link:label>
    <link:label id="lab_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement_label_en-US" xlink:label="lab_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Award, Settlement</link:label>
    <link:label id="lab_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement_documentation_en-US" xlink:label="lab_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Award, Settlement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" xlink:href="rock-20221231.xsd#rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" xlink:to="lab_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt_e06a4221-c3a3-4d39-8128-542da392b1a2_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from long-term debt</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_75b8df28-7665-421c-9fa3-887c92623b14_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_4e1c49ab-f509-417f-a2cf-5eb537ace29a_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_10f6348f-6b04-4114-bbd4-a3afacf58286_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billings in excess of cost</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_1d1767ed-725c-4f6b-9de0-4c4ed738a2a5_terseLabel_en-US" xlink:label="lab_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expense recognized under the Non-Employee Directors Plan</link:label>
    <link:label id="lab_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_label_en-US" xlink:label="lab_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Goods and Nonemployee Services Transaction, Share-based Compensation</link:label>
    <link:label id="lab_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_documentation_en-US" xlink:label="lab_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Goods and Nonemployee Services Transaction, Share-based Compensation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" xlink:href="rock-20221231.xsd#rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" xlink:to="lab_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SummaryOfValuationAllowanceTextBlock_4dc892ca-cfcb-4e1f-ab85-2e857d8935e6_terseLabel_en-US" xlink:label="lab_us-gaap_SummaryOfValuationAllowanceTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Valuation Allowance</link:label>
    <link:label id="lab_us-gaap_SummaryOfValuationAllowanceTextBlock_label_en-US" xlink:label="lab_us-gaap_SummaryOfValuationAllowanceTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Valuation Allowance [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SummaryOfValuationAllowanceTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SummaryOfValuationAllowanceTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SummaryOfValuationAllowanceTextBlock" xlink:to="lab_us-gaap_SummaryOfValuationAllowanceTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeDomain_05c663cf-b372-4a6e-b685-449c905c4c0d_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanTypeDomain_label_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTypeDomain" xlink:to="lab_us-gaap_RetirementPlanTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransferredOverTimeMember_4fadb447-e822-4deb-9bc4-11d0fa6ef7c3_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Over Time</link:label>
    <link:label id="lab_us-gaap_TransferredOverTimeMember_label_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transferred over Time [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredOverTimeMember" xlink:to="lab_us-gaap_TransferredOverTimeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_db1fba53-492e-4474-af39-3a8c188c1451_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total acquisition related costs</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Acquisition Related Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:to="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_d584d17f-5ff4-43ec-904b-c98e75035b07_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AssetsAndLiabilitiesLesseeTableTextBlock_90df2efe-62c8-4528-badd-4b3bfe84c428_terseLabel_en-US" xlink:label="lab_rock_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets And Liabilities, Lessee</link:label>
    <link:label id="lab_rock_AssetsAndLiabilitiesLesseeTableTextBlock_label_en-US" xlink:label="lab_rock_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets And Liabilities, Lessee [Table Text Block]</link:label>
    <link:label id="lab_rock_AssetsAndLiabilitiesLesseeTableTextBlock_documentation_en-US" xlink:label="lab_rock_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets And Liabilities, Lessee [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:href="rock-20221231.xsd#rock_AssetsAndLiabilitiesLesseeTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:to="lab_rock_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_914ee2fd-2006-4976-810c-a2c494639702_totalLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total accrued expenses</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A2022SeniorCreditAgreementMember_0ca548a7-fc4f-47e6-b1ba-c313df686aa8_terseLabel_en-US" xlink:label="lab_rock_A2022SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Senior Credit Agreement</link:label>
    <link:label id="lab_rock_A2022SeniorCreditAgreementMember_label_en-US" xlink:label="lab_rock_A2022SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Senior Credit Agreement [Member]</link:label>
    <link:label id="lab_rock_A2022SeniorCreditAgreementMember_documentation_en-US" xlink:label="lab_rock_A2022SeniorCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Senior Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2022SeniorCreditAgreementMember" xlink:href="rock-20221231.xsd#rock_A2022SeniorCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A2022SeniorCreditAgreementMember" xlink:to="lab_rock_A2022SeniorCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_afaddc52-f89c-43c3-951e-36c76ae374f5_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_19d0501e-d1ae-44cb-a150-2cd9d18a6585_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash (used in) provided by investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseCost_099bf502-387a-4594-8633-80ceffc5a555_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost" xlink:to="lab_us-gaap_OperatingLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax_c4e57b53-2fed-4525-b9db-b3697d74a8e5_negatedLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pre-tax accumulated other comprehensive loss &#8211; unamortized post-retirement healthcare costs</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss), after Reclassification Adjustment, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax" xlink:to="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_0bba072d-3fde-4cb8-ad0e-95440cc05535_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term loan (up to)</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Face Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFaceAmount" xlink:to="lab_us-gaap_DebtInstrumentFaceAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax_422144b1-eacb-4e43-976f-d854ec24e319_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive (loss) income</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax_d7f250b9-755d-4947-91bb-3f2a41cc40d5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign currency translation adjustment</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_735740e6-b983-4cb0-b79c-218588fc0117_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total comprehensive income</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_e50b5790-25f0-4980-bf74-2a0fd751a46a_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired goodwill</link:label>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_label_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Acquired During Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:to="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_f2f0cf71-961e-48e4-b4aa-02af13abe52f_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided by operating activities of continuing operations</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities, Continuing Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock_47451c31-d452-49e1-9359-9112bff32625_terseLabel_en-US" xlink:label="lab_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested</link:label>
    <link:label id="lab_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock_label_en-US" xlink:label="lab_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Fair Value Of Options Exercised And Other Awards Vested [Table Text Block]</link:label>
    <link:label id="lab_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock_documentation_en-US" xlink:label="lab_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disclosure of the intrinsic value of options exercised and fair value of restricted stock and restricted stock units vested during the period.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" xlink:href="rock-20221231.xsd#rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" xlink:to="lab_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_2e991c4f-840e-4c4b-af23-6d863e2e643e_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash (used in) provided by investing activities of continuing operations</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities, Continuing Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DebtInstrumentApplicableRatePeriodAxis_68e4b615-2e01-4d8b-a585-59fbfd4d2972_terseLabel_en-US" xlink:label="lab_rock_DebtInstrumentApplicableRatePeriodAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Applicable Rate Period [Axis]</link:label>
    <link:label id="lab_rock_DebtInstrumentApplicableRatePeriodAxis_label_en-US" xlink:label="lab_rock_DebtInstrumentApplicableRatePeriodAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Applicable Rate Period [Axis]</link:label>
    <link:label id="lab_rock_DebtInstrumentApplicableRatePeriodAxis_documentation_en-US" xlink:label="lab_rock_DebtInstrumentApplicableRatePeriodAxis" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Applicable Rate Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentApplicableRatePeriodAxis" xlink:href="rock-20221231.xsd#rock_DebtInstrumentApplicableRatePeriodAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodAxis" xlink:to="lab_rock_DebtInstrumentApplicableRatePeriodAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_a8262b33-500c-478a-bb19-3f3f4e912aa7_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_28ab65ec-287f-476e-b5d3-c2d315a78d8e_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_ecf54789-4951-4ca8-820a-7ca1cdbb527e_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_b67d5b28-d74b-480e-91bd-100089e86553_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and other intangible assets</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_295df980-d240-4c49-8b70-d9b00e8c3cfa_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (loss) from discontinued operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_6aabac15-2dce-4063-98ca-2bd0e22e2d2c_netLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (loss) from discontinued operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:to="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRestructuring_4a6d00a0-465c-4042-bdef-4b5841d1d149_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRestructuring" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash payments</link:label>
    <link:label id="lab_us-gaap_PaymentsForRestructuring_label_en-US" xlink:label="lab_us-gaap_PaymentsForRestructuring" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Restructuring</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRestructuring" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRestructuring"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRestructuring" xlink:to="lab_us-gaap_PaymentsForRestructuring" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_006be0b3-e354-47c8-9128-d48b0b0a1794_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Options Exercisable</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNetFundedStatusTableTextBlock_5332daae-14b7-48cb-a48a-17656494d5a1_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNetFundedStatusTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Changes in the Accumulated Postretirement Benefit Obligation</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNetFundedStatusTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNetFundedStatusTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Net Funded Status [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetFundedStatusTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNetFundedStatusTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNetFundedStatusTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfNetFundedStatusTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_0ef45bed-260b-4b81-8452-d2fc55f8b934_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_a572e304-073b-48ff-bb3e-0c624bd3c9eb_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_63a548a0-dccf-451d-a2cb-26cc0e6d560a_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Annual commitment fee (as a percentage)</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Unused Capacity, Commitment Fee Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:to="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_dc03b978-518d-45e2-85da-aa085635e2b2_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_48a6141e-12a6-4fc0-ac79-01d4ed239bcd_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statutory rate</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_f272eb47-51bd-4e12-9ad3-5e2b6700ded3_netLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statutory tax rate, percentage</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_c5b3f6a2-df84-423a-8d1a-6985305c4248_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost charged to the tax provision</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Cost and Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_858b9e18-9664-4866-a41c-9343035e8604_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Options Outstanding</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_dc7742af-d406-45a3-94db-e3dfbe24a085_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7ff12e21-d47c-4a21-94d6-8d1de84a6e5a_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_a985480a-7742-4677-9ce9-855e6043df77_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Table]</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DeferredStockUnitsMember_967bfbb9-a680-44b1-91d8-f3d212de69ba_terseLabel_en-US" xlink:label="lab_rock_DeferredStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Stock Units</link:label>
    <link:label id="lab_rock_DeferredStockUnitsMember_label_en-US" xlink:label="lab_rock_DeferredStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Stock Units [Member]</link:label>
    <link:label id="lab_rock_DeferredStockUnitsMember_documentation_en-US" xlink:label="lab_rock_DeferredStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Stock Units [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredStockUnitsMember" xlink:href="rock-20221231.xsd#rock_DeferredStockUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DeferredStockUnitsMember" xlink:to="lab_rock_DeferredStockUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_3c6e2e41-744e-44fd-8d86-c0c278584d5a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital loss carryforward</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Capital Loss Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsCapitalLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:to="lab_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember_763d0933-f74d-4837-95f5-de3db2dc2d9e_terseLabel_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit Threshold</link:label>
    <link:label id="lab_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember_label_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Measurement, Gross Profit Threshold [Member]</link:label>
    <link:label id="lab_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember_documentation_en-US" xlink:label="lab_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Measurement, Gross Profit Threshold [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementGrossProfitThresholdMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember" xlink:to="lab_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TechnologyEquipmentMember_340f5b1c-4b57-482f-9202-dc122f796aa1_terseLabel_en-US" xlink:label="lab_us-gaap_TechnologyEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Technology</link:label>
    <link:label id="lab_us-gaap_TechnologyEquipmentMember_label_en-US" xlink:label="lab_us-gaap_TechnologyEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Technology Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TechnologyEquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TechnologyEquipmentMember" xlink:to="lab_us-gaap_TechnologyEquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_9b8fb9ef-f5e9-4046-8af1-6afd75d3aac2_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_0654cb4a-c1b6-4bf6-be9a-4f14f7fe5f1d_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State taxes, less federal effect</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A2018PlanMember_7b04c096-e6d5-45ae-8d1b-28e84186d6b4_terseLabel_en-US" xlink:label="lab_rock_A2018PlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2018 Plan</link:label>
    <link:label id="lab_rock_A2018PlanMember_label_en-US" xlink:label="lab_rock_A2018PlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2018 Plan [Member]</link:label>
    <link:label id="lab_rock_A2018PlanMember_documentation_en-US" xlink:label="lab_rock_A2018PlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2018 Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018PlanMember" xlink:href="rock-20221231.xsd#rock_A2018PlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A2018PlanMember" xlink:to="lab_rock_A2018PlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ScheduleOfInterestCashPaymentTableTextBlock_f1342c54-ba44-40a1-bda1-1f2f9c05dba8_terseLabel_en-US" xlink:label="lab_rock_ScheduleOfInterestCashPaymentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Cash Paid for Interest</link:label>
    <link:label id="lab_rock_ScheduleOfInterestCashPaymentTableTextBlock_label_en-US" xlink:label="lab_rock_ScheduleOfInterestCashPaymentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Interest, Cash Payment [Table Text Block]</link:label>
    <link:label id="lab_rock_ScheduleOfInterestCashPaymentTableTextBlock_documentation_en-US" xlink:label="lab_rock_ScheduleOfInterestCashPaymentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of interest, cash payment [table text block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleOfInterestCashPaymentTableTextBlock" xlink:href="rock-20221231.xsd#rock_ScheduleOfInterestCashPaymentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ScheduleOfInterestCashPaymentTableTextBlock" xlink:to="lab_rock_ScheduleOfInterestCashPaymentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_24dcc64b-bdde-4e49-90b4-2e0c37876885_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effect of exchange rate changes on cash</link:label>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_a431573d-f0ad-4916-86e4-394ac603f6b4_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant, and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_55d4e210-3316-4135-93f2-50a617bd95c4_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant, and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AgtechMember_5d29af6e-4be6-42f2-973b-c3ed1de6edf0_terseLabel_en-US" xlink:label="lab_rock_AgtechMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Agtech</link:label>
    <link:label id="lab_rock_AgtechMember_label_en-US" xlink:label="lab_rock_AgtechMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Agtech [Member]</link:label>
    <link:label id="lab_rock_AgtechMember_documentation_en-US" xlink:label="lab_rock_AgtechMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Agtech</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AgtechMember" xlink:to="lab_rock_AgtechMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasePayments_aa21638d-264a-4981-a0f9-a3e4ad8fc0be_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash paid for amounts included in the measurement of operating liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments" xlink:to="lab_us-gaap_OperatingLeasePayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_c32c316e-aec6-49a1-a06f-d68090df0918_negatedLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term debt payments</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayments of Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:to="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_93122274-5256-4de2-a1b1-a258fb1da8ee_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Amortization Expense</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_0082d471-23e8-4a8b-8cab-d5d363f4b799_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Acquired Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DebtInstrumentNumberOfDebtCovenants_86cae3ab-4305-4e3e-ad54-f285986401ca_terseLabel_en-US" xlink:label="lab_rock_DebtInstrumentNumberOfDebtCovenants" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of debt covenants</link:label>
    <link:label id="lab_rock_DebtInstrumentNumberOfDebtCovenants_label_en-US" xlink:label="lab_rock_DebtInstrumentNumberOfDebtCovenants" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Number of Debt Covenants</link:label>
    <link:label id="lab_rock_DebtInstrumentNumberOfDebtCovenants_documentation_en-US" xlink:label="lab_rock_DebtInstrumentNumberOfDebtCovenants" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Number of Debt Covenants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentNumberOfDebtCovenants" xlink:href="rock-20221231.xsd#rock_DebtInstrumentNumberOfDebtCovenants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DebtInstrumentNumberOfDebtCovenants" xlink:to="lab_rock_DebtInstrumentNumberOfDebtCovenants" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AcquiredIntangibleAssetsTotal_75007e6f-403e-4048-961b-1281978e7060_terseLabel_en-US" xlink:label="lab_rock_AcquiredIntangibleAssetsTotal" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total acquired intangible assets, Gross Carrying Amount</link:label>
    <link:label id="lab_rock_AcquiredIntangibleAssetsTotal_label_en-US" xlink:label="lab_rock_AcquiredIntangibleAssetsTotal" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Intangible Assets, Total</link:label>
    <link:label id="lab_rock_AcquiredIntangibleAssetsTotal_documentation_en-US" xlink:label="lab_rock_AcquiredIntangibleAssetsTotal" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Intangible Assets, Total.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AcquiredIntangibleAssetsTotal" xlink:href="rock-20221231.xsd#rock_AcquiredIntangibleAssetsTotal"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AcquiredIntangibleAssetsTotal" xlink:to="lab_rock_AcquiredIntangibleAssetsTotal" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValue_c2556bdc-8b1b-413e-8061-d5b897bc3cf7_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of 3,199 and 1,107 common shares held in treasury in 2022 and 2021</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValue_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValue" xlink:to="lab_us-gaap_TreasuryStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain_c396f36d-51a9-4d6c-b451-d545c0968f05_terseLabel_en-US" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of Individual [Domain]</link:label>
    <link:label id="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain_label_en-US" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of Individual [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_3e8a0776-27a7-4f85-a914-626c341b571f_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustment to post-retirement benefit liability, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_3d7f8dde-93b4-4e80-90e5-754e9fc3730e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustment to post-retirement healthcare benefit liability, net of taxes</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive (Income) Loss, Defined Benefit Plan, after Reclassification Adjustment, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_d2363dbd-f713-4781-b1ad-be1277647991_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating expenses</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_e336177d-d5c2-485d-8642-b30fb9060022_terseLabel_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease asset</link:label>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Right-of-Use Asset</link:label>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_documentation_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" xlink:to="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65_ec7fe78d-f499-4f72-8900-3f6c10bec4c4_terseLabel_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Annual rate of increase in the per capita cost of: Medical costs after age 65</link:label>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65_label_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs After Age 65</link:label>
    <link:label id="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65_documentation_en-US" xlink:label="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs After Age 65</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" xlink:to="lab_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_c7110517-4f56-471b-b900-5fcbf1c4d8a8_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Allowance for credit loss</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_17577bcf-638b-4fa6-ae3f-ecc189a3118e_periodStartLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_ed3015ac-01f8-4599-bf74-2c94f3c1786b_periodEndLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_f73a9ac5-01fb-48d4-bfda-c9b2c96218d3_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less allowance for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_PerformanceStockUnitsMember_18ec735d-605f-4df2-abdc-f3073256b722_terseLabel_en-US" xlink:label="lab_rock_PerformanceStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Stock Units</link:label>
    <link:label id="lab_rock_PerformanceStockUnitsMember_label_en-US" xlink:label="lab_rock_PerformanceStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Stock Units [Member]</link:label>
    <link:label id="lab_rock_PerformanceStockUnitsMember_documentation_en-US" xlink:label="lab_rock_PerformanceStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance stock units [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PerformanceStockUnitsMember" xlink:href="rock-20221231.xsd#rock_PerformanceStockUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_PerformanceStockUnitsMember" xlink:to="lab_rock_PerformanceStockUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_10526ee1-8e3f-4583-8dd1-497db7d5fdbd_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock options exercised</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_27e21378-17ef-49c1-9ff1-ff2a1139cbc1_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited in period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_3a9aa9be-6276-452c-b2de-ea9dc9d1bcfe_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebt_7ac1c28d-e7ee-45d8-b2f4-83d6736eb5ac_totalLabel_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebt_4942a5c8-79e3-437a-b0f6-fc12d6f0535c_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Carrying value of outstanding debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebt_label_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="lab_us-gaap_LongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_NetPeriodicPostRetirementCostTable_7787e098-581f-4511-b65e-f9947e3e4434_terseLabel_en-US" xlink:label="lab_rock_NetPeriodicPostRetirementCostTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Periodic Post Retirement Cost [Table]</link:label>
    <link:label id="lab_rock_NetPeriodicPostRetirementCostTable_label_en-US" xlink:label="lab_rock_NetPeriodicPostRetirementCostTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Periodic Post Retirement Cost [Table]</link:label>
    <link:label id="lab_rock_NetPeriodicPostRetirementCostTable_documentation_en-US" xlink:label="lab_rock_NetPeriodicPostRetirementCostTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Periodic Post Retirement Cost [Table].</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NetPeriodicPostRetirementCostTable" xlink:href="rock-20221231.xsd#rock_NetPeriodicPostRetirementCostTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_NetPeriodicPostRetirementCostTable" xlink:to="lab_rock_NetPeriodicPostRetirementCostTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_d0089fe0-8f9b-4985-8802-ffcb8a1b0724_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationAxis" xlink:to="lab_us-gaap_BalanceSheetLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_550f87e1-9294-480a-8634-dd1c50553a5d_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exit Activity Costs and Asset Impairments</link:label>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Activities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:to="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_36604767-8201-47b8-9469-db54a1d6eb20_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill_cdbe680c-fa02-4576-bd8e-4e1a7299b365_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_6dede620-c33f-4ca5-ab2b-52ded54d59fb_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Income Taxes, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:to="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_1b441999-1879-4d2c-8250-c8886464cad7_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_c6dde299-ba64-43da-a0cf-b5d0ed8ef62f_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated other comprehensive (loss) income</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_0457cf06-fa7a-42a5-adfa-72a75ad5ad06_periodStartLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_db2e6e05-ab12-4962-9bb2-f2a32cfafb85_periodEndLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of period</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_ff7917b1-1d4d-45af-9553-0242e3a63090_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest expense allocation</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45d85a30-479c-4702-9b4f-63f894498587_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock_7ab75248-3475-44a9-8887-1549d5eb5ab3_terseLabel_en-US" xlink:label="lab_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory</link:label>
    <link:label id="lab_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock_label_en-US" xlink:label="lab_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary Of Slow Moving Inventory Activity [Table Text Block]</link:label>
    <link:label id="lab_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock_documentation_en-US" xlink:label="lab_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rollforward of excess, obsolete, and slow-moving inventory reserve.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock" xlink:href="rock-20221231.xsd#rock_SummaryOfSlowMovingInventoryActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock" xlink:to="lab_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_3faf5e07-35f8-4e76-ad10-6102eab6fbbe_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWorkInProcess_81d3835d-6562-4651-a94f-edcedd510387_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcess" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Work-in-process</link:label>
    <link:label id="lab_us-gaap_InventoryWorkInProcess_label_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcess" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Work in Process, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcess" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcess"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcess" xlink:to="lab_us-gaap_InventoryWorkInProcess" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_c6a341f3-ed96-403a-859c-313fdb05a995_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_c779fbbe-b1ba-47fd-968e-ffcf1ac5aef8_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments made for income taxes, net</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Paid, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaidNet" xlink:to="lab_us-gaap_IncomeTaxesPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_38de50de-482e-412e-8192-ad42099e9c31_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:to="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_InfrastructureMember_31247882-41ed-4d4b-8d30-3a2420614501_terseLabel_en-US" xlink:label="lab_rock_InfrastructureMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Infrastructure</link:label>
    <link:label id="lab_rock_InfrastructureMember_label_en-US" xlink:label="lab_rock_InfrastructureMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Infrastructure [Member]</link:label>
    <link:label id="lab_rock_InfrastructureMember_documentation_en-US" xlink:label="lab_rock_InfrastructureMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Infrastructure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_InfrastructureMember" xlink:to="lab_rock_InfrastructureMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_a0d4e43e-462a-49cc-984b-04ffb0ef7f69_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_b943f69c-edd5-4c9f-839d-c255b223dc96_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportingUnits_511b15b2-7ba6-47ae-8223-3fec57468c05_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportingUnits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of reporting units</link:label>
    <link:label id="lab_us-gaap_NumberOfReportingUnits_label_en-US" xlink:label="lab_us-gaap_NumberOfReportingUnits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Reporting Units</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportingUnits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportingUnits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportingUnits" xlink:to="lab_us-gaap_NumberOfReportingUnits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_d123f7ee-cb86-46f7-a425-80864037f312_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Net Periodic Pension and Other Post-Retirement Benefit Costs</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Net Benefit Costs [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNetBenefitCostsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SellingGeneralAndAdministrativeExpenseMember_ab9b8f09-1453-4c0d-9539-e905eeeff581_terseLabel_en-US" xlink:label="lab_rock_SellingGeneralAndAdministrativeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general, and administrative expense</link:label>
    <link:label id="lab_rock_SellingGeneralAndAdministrativeExpenseMember_label_en-US" xlink:label="lab_rock_SellingGeneralAndAdministrativeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling General And Administrative Expense [Member]</link:label>
    <link:label id="lab_rock_SellingGeneralAndAdministrativeExpenseMember_documentation_en-US" xlink:label="lab_rock_SellingGeneralAndAdministrativeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling General And Administrative Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SellingGeneralAndAdministrativeExpenseMember" xlink:href="rock-20221231.xsd#rock_SellingGeneralAndAdministrativeExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SellingGeneralAndAdministrativeExpenseMember" xlink:to="lab_rock_SellingGeneralAndAdministrativeExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_ae1bc197-996a-49ac-9c24-bb8add15ea97_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining performance obligation expected timing of satisfaction</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_7a87448e-51de-4eb9-afab-b396a203e665_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable" xlink:to="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_e5ae642c-f925-460f-be2f-ad735f33eaf0_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary Of Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_659ded65-60d4-472c-a98e-7838b9e317fa_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized compensation cost</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward_788be097-2c30-47e7-b5de-7f778fd88b1d_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward_label_en-US" xlink:label="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MovementInValuationAllowancesAndReservesRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:to="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_a1a7e6b9-8cbe-4cda-8e0c-b3b66c7e0cb4_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Options (in shares):</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_f7f3c40b-fef8-4021-8472-c777c0a0fd42_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant, and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnpatentedTechnologyMember_6cf1f9da-cfa3-4d9a-a8aa-ee86d847114a_terseLabel_en-US" xlink:label="lab_us-gaap_UnpatentedTechnologyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unpatented technology and patents</link:label>
    <link:label id="lab_us-gaap_UnpatentedTechnologyMember_label_en-US" xlink:label="lab_us-gaap_UnpatentedTechnologyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unpatented Technology [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnpatentedTechnologyMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnpatentedTechnologyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnpatentedTechnologyMember" xlink:to="lab_us-gaap_UnpatentedTechnologyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ThermoEnergySystemsMember_6b19c3c8-f965-4dd6-9aee-ec439b405cf2_terseLabel_en-US" xlink:label="lab_rock_ThermoEnergySystemsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thermo Energy Systems</link:label>
    <link:label id="lab_rock_ThermoEnergySystemsMember_label_en-US" xlink:label="lab_rock_ThermoEnergySystemsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thermo Energy Systems [Member]</link:label>
    <link:label id="lab_rock_ThermoEnergySystemsMember_documentation_en-US" xlink:label="lab_rock_ThermoEnergySystemsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thermo Energy Systems [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ThermoEnergySystemsMember" xlink:href="rock-20221231.xsd#rock_ThermoEnergySystemsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ThermoEnergySystemsMember" xlink:to="lab_rock_ThermoEnergySystemsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_b0ffa1c9-e1c9-4377-b121-7c0414cc15d1_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax benefits recognized related to stock compensation expense</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Tax Benefit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_cb1997eb-f78c-4cd3-b8fb-61003fb5a89d_verboseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (loss) before taxes</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_d8f6488f-9bb4-447c-9bf3-e9bf9dcfddce_totalLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">(Loss) income before taxes</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:to="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ManagementMember_e20ef3d7-defc-4f9b-a274-869fbbb10ab0_terseLabel_en-US" xlink:label="lab_srt_ManagementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Management</link:label>
    <link:label id="lab_srt_ManagementMember_label_en-US" xlink:label="lab_srt_ManagementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Management [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ManagementMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ManagementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ManagementMember" xlink:to="lab_srt_ManagementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_71e39fb4-9674-4ab3-8294-3f2a9d142d2d_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate Intrinsic&#160;Value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SaleLeasebackTransactionLineItems_92f5b94d-2c31-4274-88ee-9e1a1ac4d644_terseLabel_en-US" xlink:label="lab_us-gaap_SaleLeasebackTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale Leaseback Transaction [Line Items]</link:label>
    <link:label id="lab_us-gaap_SaleLeasebackTransactionLineItems_label_en-US" xlink:label="lab_us-gaap_SaleLeasebackTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale Leaseback Transaction [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleLeasebackTransactionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleLeasebackTransactionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems" xlink:to="lab_us-gaap_SaleLeasebackTransactionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_9115e9c7-0882-4d8b-a03b-0c8cdd6e8867_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_23d39f1c-b91d-40ac-a4ea-d905b567f8de_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_525e2874-6dfa-4319-8376-0d120bff5039_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_1f9dfe53-c983-4f9a-a670-1a0ebe9df388_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_5bdf8e16-82de-4a50-bac6-54b217755689_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness_a8c6c7d6-c8fc-40f3-be48-a824a5444e67_negatedTerseLabel_en-US" xlink:label="lab_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets held for sale</link:label>
    <link:label id="lab_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness_label_en-US" xlink:label="lab_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Temporary Difference, Future Sale Of Business</link:label>
    <link:label id="lab_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness_documentation_en-US" xlink:label="lab_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Temporary Difference, Future Sale Of Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" xlink:href="rock-20221231.xsd#rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" xlink:to="lab_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxContingencyLineItems_95f571a5-8cc4-4e83-8747-09fb0e7f13e7_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Contingency [Line Items]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxContingencyLineItems_label_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Contingency [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxContingencyLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems" xlink:to="lab_us-gaap_IncomeTaxContingencyLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_38047269-e97b-41ab-b693-5820251c8a00_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total operating lease liability</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_062c9c72-676b-4058-b6da-36fe2d100171_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Present value of lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ScheduleofBusinessCombinationCostsTableTextBlock_9c61e358-b304-45d0-9bc6-cd5a4f8d565e_terseLabel_en-US" xlink:label="lab_rock_ScheduleofBusinessCombinationCostsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Combination Costs</link:label>
    <link:label id="lab_rock_ScheduleofBusinessCombinationCostsTableTextBlock_label_en-US" xlink:label="lab_rock_ScheduleofBusinessCombinationCostsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Combination Costs [Table Text Block]</link:label>
    <link:label id="lab_rock_ScheduleofBusinessCombinationCostsTableTextBlock_documentation_en-US" xlink:label="lab_rock_ScheduleofBusinessCombinationCostsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Combination Costs [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleofBusinessCombinationCostsTableTextBlock" xlink:href="rock-20221231.xsd#rock_ScheduleofBusinessCombinationCostsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ScheduleofBusinessCombinationCostsTableTextBlock" xlink:to="lab_rock_ScheduleofBusinessCombinationCostsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_51cbe04c-3881-4f52-882a-9a8f1814ffc1_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Information</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_9125583c-4c0e-49bc-9e0f-6eea60efb6ac_periodStartLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance as of January&#160;1</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_bd1bc740-3250-4a63-bbd5-21258ca2a8d2_periodEndLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance as of December&#160;31</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesBalance" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesBalance" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization_0bc57398-693d-4cc3-9cfc-5caf445f11d4_terseLabel_en-US" xlink:label="lab_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total acquired intangible assets, Accumulated Amortization</link:label>
    <link:label id="lab_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization_label_en-US" xlink:label="lab_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total acquired intangible assets, Accumulated Amortization</link:label>
    <link:label id="lab_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization_documentation_en-US" xlink:label="lab_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total acquired intangible assets, accumulated amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization" xlink:href="rock-20221231.xsd#rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization" xlink:to="lab_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_1b1a99f8-03e5-4d8b-b158-539bac4723b2_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity-based compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_55d48300-7b91-4943-b272-cb88e356e648_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SG&amp;A</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_43f6dc58-6abe-4972-bd16-9c558509676c_verboseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general and administrative costs</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_0d059998-01d1-41ca-8a0d-d8ad25232cf3_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued expenses and other non-current liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Other Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1_665f76f9-22d2-4297-a2f1-cca5837d87bb_verboseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ultimate healthcare trend rates</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Ultimate Health Care Cost Trend Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1" xlink:to="lab_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_efb84cb2-f23d-43e9-a399-12dbe7838ad4_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Excess tax benefit on stock based compensation</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_6e7d4738-d265-466a-8b8b-c770a5afcf1f_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_427f1574-017a-4eac-8e5c-85e8e25689c6_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilities" xlink:to="lab_us-gaap_DeferredTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_OtherPostretirementBenefitsAbstract_7b8e6952-8e91-46c8-a955-0f0615306c7c_terseLabel_en-US" xlink:label="lab_rock_OtherPostretirementBenefitsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Postretirement Benefits [Abstract]</link:label>
    <link:label id="lab_rock_OtherPostretirementBenefitsAbstract_label_en-US" xlink:label="lab_rock_OtherPostretirementBenefitsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Postretirement Benefits [Abstract]</link:label>
    <link:label id="lab_rock_OtherPostretirementBenefitsAbstract_documentation_en-US" xlink:label="lab_rock_OtherPostretirementBenefitsAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Postretirement Benefits [Abstract].</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract" xlink:to="lab_rock_OtherPostretirementBenefitsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_c835bc63-7ac3-48f4-82dc-6e60a4a971af_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Stockholders&#8217; Equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_NonCurrentLiabilitiesMember_ad903ee8-725e-4c99-a895-8e2a07c97b43_terseLabel_en-US" xlink:label="lab_rock_NonCurrentLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non Current Liabilities</link:label>
    <link:label id="lab_rock_NonCurrentLiabilitiesMember_label_en-US" xlink:label="lab_rock_NonCurrentLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non Current Liabilities [Member]</link:label>
    <link:label id="lab_rock_NonCurrentLiabilitiesMember_documentation_en-US" xlink:label="lab_rock_NonCurrentLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non Current Liabilities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NonCurrentLiabilitiesMember" xlink:href="rock-20221231.xsd#rock_NonCurrentLiabilitiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_NonCurrentLiabilitiesMember" xlink:to="lab_rock_NonCurrentLiabilitiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock_10ef5afb-378a-472c-b029-11837df66f4f_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurements Used by Management to Assess Performance of Segments</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:to="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_32bab661-f8b4-46f5-84df-23ddd01f5589_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories, net</link:label>
    <link:label id="lab_us-gaap_InventoryNet_4599c809-f3be-4ee4-9b9c-5f03d49181d4_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_label_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_73891f75-2e3a-42b3-a968-e4caf8ccd400_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringCharges_c9304450-f3ad-473f-a9c1-7a0a2fd9f48e_verboseLabel_en-US" xlink:label="lab_us-gaap_RestructuringCharges" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring charges</link:label>
    <link:label id="lab_us-gaap_RestructuringCharges_label_en-US" xlink:label="lab_us-gaap_RestructuringCharges" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Charges</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCharges" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCharges"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringCharges" xlink:to="lab_us-gaap_RestructuringCharges" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_5c4cd74d-ab67-4c04-9848-2fb0ea5f1d7e_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfBusinessesAcquired_49a2b6bd-87a9-4e25-8376-a72b3912526f_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfBusinessesAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of businesses acquired</link:label>
    <link:label id="lab_us-gaap_NumberOfBusinessesAcquired_label_en-US" xlink:label="lab_us-gaap_NumberOfBusinessesAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Businesses Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfBusinessesAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfBusinessesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfBusinessesAcquired" xlink:to="lab_us-gaap_NumberOfBusinessesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_debf09c1-3cf7-46a1-9319-a5cec3654779_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other current assets and other assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Other Operating Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_d1c4d674-af7e-467e-a68e-ed161c158f80_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income from continuing operations (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Basic Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ApplicableRatePeriod2Member_ab0bb0b5-3539-4a19-86c3-7e31bc83347d_terseLabel_en-US" xlink:label="lab_rock_ApplicableRatePeriod2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Applicable rate after April 1, 2023</link:label>
    <link:label id="lab_rock_ApplicableRatePeriod2Member_label_en-US" xlink:label="lab_rock_ApplicableRatePeriod2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Applicable Rate Period 2 [Member]</link:label>
    <link:label id="lab_rock_ApplicableRatePeriod2Member_documentation_en-US" xlink:label="lab_rock_ApplicableRatePeriod2Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Applicable Rate Period 2</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApplicableRatePeriod2Member" xlink:href="rock-20221231.xsd#rock_ApplicableRatePeriod2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ApplicableRatePeriod2Member" xlink:to="lab_rock_ApplicableRatePeriod2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorLocation_52b59ab9-fb5d-48e6-b2a6-6e5d18a397c9_terseLabel_en-US" xlink:label="lab_dei_AuditorLocation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Location</link:label>
    <link:label id="lab_dei_AuditorLocation_label_en-US" xlink:label="lab_dei_AuditorLocation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Location</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorLocation" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorLocation" xlink:to="lab_dei_AuditorLocation" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_0d4fea37-987e-48ba-94c4-3d281f56e215_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A2019Member_c20bb6c6-a1ab-4227-8bf7-6c151c598977_terseLabel_en-US" xlink:label="lab_rock_A2019Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2019</link:label>
    <link:label id="lab_rock_A2019Member_label_en-US" xlink:label="lab_rock_A2019Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2019 [Member]</link:label>
    <link:label id="lab_rock_A2019Member_documentation_en-US" xlink:label="lab_rock_A2019Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2019 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019Member" xlink:href="rock-20221231.xsd#rock_A2019Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A2019Member" xlink:to="lab_rock_A2019Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfCommonStock_f91819aa-a728-4725-96b1-0615bf5e4606_verboseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net proceeds from issuance of common stock</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfCommonStock_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ed362c39-6d8b-44d9-90c0-291285d5ef5c_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares outstanding &#8211; Basic (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_8a82113b-e776-43ee-ab4a-10ca9a17908f_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax_d33755ca-0889-491c-8bd9-b29f21b20330_periodStartLabel_en-US" xlink:label="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax_d3090e4f-965e-4b9f-aebc-7dfcbc8c88f5_periodEndLabel_en-US" xlink:label="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of period</link:label>
    <link:label id="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax_label_en-US" xlink:label="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Tax</link:label>
    <link:label id="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax_documentation_en-US" xlink:label="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax" xlink:href="rock-20221231.xsd#rock_AccumulatedOtherComprehensiveIncomeLossTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax" xlink:to="lab_rock_AccumulatedOtherComprehensiveIncomeLossTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_22602619-685a-4bfc-9f3e-5b2d6a010a70_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">U.S. Federal</link:label>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Federal Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_7fd9afd5-7dda-41b2-916a-a9b0d35117db_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_label_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent_daea8990-ff65-4e13-8ae1-0fb6aff11127_terseLabel_en-US" xlink:label="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Executive compensation</link:label>
    <link:label id="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent_label_en-US" xlink:label="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Executive Compensation, Percent</link:label>
    <link:label id="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent_documentation_en-US" xlink:label="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Executive Compensation, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" xlink:href="rock-20221231.xsd#rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" xlink:to="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_c30c3d2e-2404-46ce-832c-963dad3302f0_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired intangibles, net</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Intangible Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_HomeImprovementRetailCompanyMember_ac33d46c-3d00-4842-b9c6-9a24974bbbb0_terseLabel_en-US" xlink:label="lab_rock_HomeImprovementRetailCompanyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Home Improvement Retail Company</link:label>
    <link:label id="lab_rock_HomeImprovementRetailCompanyMember_label_en-US" xlink:label="lab_rock_HomeImprovementRetailCompanyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Home Improvement Retail Company [Member]</link:label>
    <link:label id="lab_rock_HomeImprovementRetailCompanyMember_documentation_en-US" xlink:label="lab_rock_HomeImprovementRetailCompanyMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Home Improvement Retail Company [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_HomeImprovementRetailCompanyMember" xlink:href="rock-20221231.xsd#rock_HomeImprovementRetailCompanyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_HomeImprovementRetailCompanyMember" xlink:to="lab_rock_HomeImprovementRetailCompanyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_49f34172-b3e0-4688-b15b-8042e7052eb8_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities, Current [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_c9c40442-63c7-4e76-ab43-70e7dc5aa557_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_376ae3e9-eb35-4e35-a78c-fa39afe4fec9_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Begininng balance (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_741f5861-760e-4f93-a828-c08035c7c8a0_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_18888da8-966d-4d94-b77c-1afaa56e90d9_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-Average Amortization Period</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockValue_17c1af0b-a7e4-44f6-9fc4-5ddb522a6a0c_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, $0.01 par value; authorized 10,000 shares; none outstanding</link:label>
    <link:label id="lab_us-gaap_PreferredStockValue_label_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue" xlink:to="lab_us-gaap_PreferredStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockMember_4d9a6e0a-84e1-455d-8308-3fc3d0769639_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock</link:label>
    <link:label id="lab_us-gaap_RestrictedStockMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockMember" xlink:to="lab_us-gaap_RestrictedStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_598c76f2-c9d6-47bc-ae68-a1f085e17f52_terseLabel_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-current operating lease liabilities</link:label>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease Liability, Noncurrent</link:label>
    <link:label id="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_documentation_en-US" xlink:label="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:to="lab_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ae21b959-f47f-4c68-86bf-8bde2851863d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDebtTableTextBlock_0d59abc0-7f9e-4cc4-a1fe-c173ced99071_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Debt</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDebtTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Debt [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDebtTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationAbstract_54f6946f-35a0-4c73-ae51-15200a5fffe9_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Noncash Expense [Abstract]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationAbstract_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Noncash Expense [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_59aaf2be-32b9-435b-a470-9afe918525ca_terseLabel_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_label_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityWellKnownSeasonedIssuer" xlink:to="lab_dei_EntityWellKnownSeasonedIssuer" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_c20c6b61-5109-44f6-9d5d-749cbd9b11de_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating loss</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanServiceCost_0c37213e-52df-41fa-9e8e-97866b3df2ce_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanServiceCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Service cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanServiceCost_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanServiceCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Service Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanServiceCost" xlink:to="lab_us-gaap_DefinedBenefitPlanServiceCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember_38deb149-e594-48dd-9c08-94179e962f15_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Valuation Allowance</link:label>
    <link:label id="lab_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember_label_en-US" xlink:label="lab_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowance, Deferred Tax Asset [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:to="lab_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_ca8a320d-fde6-4793-b978-40770dee6700_terseLabel_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTable_bb14174f-9e61-46bb-9c34-d818f318a9b3_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTable_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-Term Debt Instruments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTable" xlink:to="lab_us-gaap_DebtInstrumentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_2d169199-2c70-4097-8366-3bd6c289e41c_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Leases [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeasesPolicyTextBlock" xlink:to="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityVoluntaryFilers_0f43125f-86b5-41a7-a0e1-4abbf304e442_terseLabel_en-US" xlink:label="lab_dei_EntityVoluntaryFilers" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:label id="lab_dei_EntityVoluntaryFilers_label_en-US" xlink:label="lab_dei_EntityVoluntaryFilers" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityVoluntaryFilers" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityVoluntaryFilers" xlink:to="lab_dei_EntityVoluntaryFilers" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_3839496d-e173-4254-90c8-b3a090163997_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill impairment</link:label>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Impairment Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillImpairmentLoss" xlink:to="lab_us-gaap_GoodwillImpairmentLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_79b1bcd2-d5d8-4073-81b2-7f83d97e7146_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal tax credits</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract_1bcb2ffe-bbe5-492c-bc2d-61dee4f8a0fe_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Activities [Abstract]</link:label>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:to="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_46f03826-4dde-4d16-a1c7-4888b922c253_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity-Based Compensation</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_cc91a693-9e69-495a-accb-26853ee42fd5_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_label_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfExtinguishmentOfDebtTable_7c8305d1-7894-4198-b0e6-8c9f400c2538_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfExtinguishmentOfDebtTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Extinguishment of Debt [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfExtinguishmentOfDebtTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfExtinguishmentOfDebtTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Extinguishment of Debt [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfExtinguishmentOfDebtTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable" xlink:to="lab_us-gaap_ScheduleOfExtinguishmentOfDebtTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_acde802b-22cf-40e2-96ea-a437dde207d1_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract" xlink:to="lab_us-gaap_BusinessCombinationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_9f1bfb04-09a8-4f23-96cf-57db97afa54f_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_9c9e73a0-e123-42d8-ae95-2da93fad9c0f_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_5cd8635b-5343-4d61-9ebb-f8338aa8e949_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Change in Benefit Obligation [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Change in Benefit Obligation [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward" xlink:to="lab_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_CapitalLossCarryfowardAmendedReturns_6fe38e81-a069-4236-93f2-3fb36bf7e512_terseLabel_en-US" xlink:label="lab_rock_CapitalLossCarryfowardAmendedReturns" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amended returns</link:label>
    <link:label id="lab_rock_CapitalLossCarryfowardAmendedReturns_label_en-US" xlink:label="lab_rock_CapitalLossCarryfowardAmendedReturns" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital Loss Carryfoward, Amended Returns</link:label>
    <link:label id="lab_rock_CapitalLossCarryfowardAmendedReturns_documentation_en-US" xlink:label="lab_rock_CapitalLossCarryfowardAmendedReturns" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital Loss Carryfoward, Amended Returns</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CapitalLossCarryfowardAmendedReturns" xlink:href="rock-20221231.xsd#rock_CapitalLossCarryfowardAmendedReturns"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_CapitalLossCarryfowardAmendedReturns" xlink:to="lab_rock_CapitalLossCarryfowardAmendedReturns" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNet_a9583f9a-e6fd-4ec6-8fa9-223487e16b6c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNet" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest expense, net</link:label>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNet_63f13b9a-9e5e-4fd6-84ce-40de373a7908_terseLabel_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest expense, net</link:label>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNet_label_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Income (Expense), Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeExpenseNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestIncomeExpenseNet" xlink:to="lab_us-gaap_InterestIncomeExpenseNet" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_f7b4198e-0e66-4f5f-a600-42e12dd5c50a_terseLabel_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Documents Incorporated by Reference</link:label>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_label_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentsIncorporatedByReferenceTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardDateAxis_b18c0e93-ebfc-4ef5-bf87-f25eddd99607_terseLabel_en-US" xlink:label="lab_us-gaap_AwardDateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Date [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardDateAxis_label_en-US" xlink:label="lab_us-gaap_AwardDateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Date [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardDateAxis" xlink:to="lab_us-gaap_AwardDateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_5ed42b28-030e-4805-841d-2e54471936f7_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Discount rate</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Assumptions Used Calculating Benefit Obligation, Discount Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:to="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_604ec508-f42e-4fdd-9155-591eb4046ac9_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss amortization (2)</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Amortization of Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:to="lab_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_fb92cd31-f2ce-4337-a659-1b91676c7fc8_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities and shareholders' equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_f67605cf-e3b1-4856-bc98-426bf6716af5_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities (Assets)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1_592f88df-340b-4aed-92fd-621306b85a00_negatedTerseLabel_en-US" xlink:label="lab_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum pension and post retirement benefit plan adjustments, net of taxes</link:label>
    <link:label id="lab_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1_label_en-US" xlink:label="lab_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income Minimum Pension Liability Net Adjustment Tax 1</link:label>
    <link:label id="lab_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1_documentation_en-US" xlink:label="lab_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income Minimum Pension Liability Net Adjustment Tax 1</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" xlink:href="rock-20221231.xsd#rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" xlink:to="lab_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_10824931-cdc6-47fe-af50-221ed70e008f_negatedLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal tax credits</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCredits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_5f46f884-093f-454a-b80f-d6d705ec8a4f_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeAxis" xlink:to="lab_us-gaap_LongtermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillRollForward_6a7f8390-127e-4dfa-9f9b-fc1eb901bf24_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_GoodwillRollForward_label_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillRollForward" xlink:to="lab_us-gaap_GoodwillRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_439838b7-8463-4806-b946-a3e8027b5fdb_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_378bbf73-1d52-45b8-ba5e-ced9c75c1f85_terseLabel_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock options and restricted stock (in shares)</link:label>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_label_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_024972d6-6c19-4ee5-bb9e-d69cf9fe37b9_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net earnings per share &#8211; Diluted:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract" xlink:to="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_657ef9b4-b235-4c4d-9243-1a88d8dfd050_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_e38bb0d1-f092-4d25-9c58-add8f6d8e46b_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="lab_us-gaap_DeferredTaxAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_95182fd2-4f24-43d3-b2cb-0418467be826_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_label_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_7b555d59-b927-44f1-89cf-83b3a8395383_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Components of Income (Loss) Before Taxes from Continuing Operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_A2018Member_8f660889-b86f-4bc9-b8fe-760ab0ffe4b3_terseLabel_en-US" xlink:label="lab_rock_A2018Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2018</link:label>
    <link:label id="lab_rock_A2018Member_label_en-US" xlink:label="lab_rock_A2018Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2018 [Member]</link:label>
    <link:label id="lab_rock_A2018Member_documentation_en-US" xlink:label="lab_rock_A2018Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2018 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018Member" xlink:href="rock-20221231.xsd#rock_A2018Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_A2018Member" xlink:to="lab_rock_A2018Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_35047250-3a74-4618-be04-73bc901bc8f5_terseLabel_en-US" xlink:label="lab_us-gaap_AOCIAttributableToParentNetOfTaxRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_label_en-US" xlink:label="lab_us-gaap_AOCIAttributableToParentNetOfTaxRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Attributable to Parent, Net of Tax [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AOCIAttributableToParentNetOfTaxRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward" xlink:to="lab_us-gaap_AOCIAttributableToParentNetOfTaxRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21b588fc-9308-4d5b-95ce-8580a709b5be_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisitions, net of cash acquired</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_0f2d90fc-d666-441c-8e87-6a6d0708aa5c_terseLabel_en-US" xlink:label="lab_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expense recognized under the Plan</link:label>
    <link:label id="lab_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_label_en-US" xlink:label="lab_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Compensation Expense Recognized Under Equity Incentive Plan</link:label>
    <link:label id="lab_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_documentation_en-US" xlink:label="lab_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Compensation Expense Recognized Under Equity Incentive Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan" xlink:to="lab_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_81dd90d9-5d55-4a61-a554-715eae6a3b4c_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_4a8f0cc2-2b32-468a-97f4-65d98f9f5b3a_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Expenses</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_9920c10c-0efa-49ce-a153-3c754378b7fb_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: present value discount</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_aca12e5f-e3eb-4167-8f7f-bfc2e02a483c_terseLabel_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award performance period</link:label>
    <link:label id="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_label_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Performance Period</link:label>
    <link:label id="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_documentation_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Performance Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" xlink:to="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_6733073c-06c8-4c2c-abc2-4d0d7738b09b_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets held for sale</link:label>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_label_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_d76fe189-bbc2-41df-96d6-4db3e52736f0_periodStartLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_a1b8fc2b-4587-41c4-a3f3-8b452213cf2a_periodEndLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of period</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Including Portion Attributable to Noncontrolling Interest, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_0ca9291b-b344-435a-829a-b401a9155497_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_fc478b9c-cd59-496e-af38-6b18f78b11ec_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_739ff8de-2586-4d7f-afdf-58b3a6437f43_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired intangibles</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_af13a075-4e9d-44b9-b4a6-e4ac6055f883_totalLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_f09b4361-3907-438e-8107-cea0d223748b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Typical vesting period, in years</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_2b332478-a264-4c05-bbab-9de2c5906528_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation expense</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_879709fd-2ae2-4308-96f9-d541472a434c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsAxis_ce16e6c8-1de7-488d-92a6-0cc616527c41_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:label id="lab_srt_ConsolidationItemsAxis_label_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis" xlink:to="lab_srt_ConsolidationItemsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_f1e2ffa3-2b64-494b-9ecd-9a111b96fe2c_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price Range [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price Range [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_84b3791b-98c7-4fcc-bde0-b8e177130a6e_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:to="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_c8ec9384-2c5c-45d0-b446-0b73127ca4f3_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet_daaf0f84-bdea-4900-b013-059964f8b72b_negatedLabel_en-US" xlink:label="lab_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchases of property, plant, and equipment, net</link:label>
    <link:label id="lab_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment, Net</link:label>
    <link:label id="lab_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet_documentation_en-US" xlink:label="lab_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet" xlink:href="rock-20221231.xsd#rock_PaymentsToAcquirePropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet" xlink:to="lab_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_cf0eea15-c8ca-40ca-81bf-6194f3a76429_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsCurrent_c5134673-7c0b-4b09-b3d3-f5a5306ead10_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsCurrent" xlink:to="lab_us-gaap_OtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_67a147e6-5f58-4a47-a1c3-10ee98445fe2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_f5f4e1b2-f272-434b-8586-41e13a1d60f7_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Concentration Risk</link:label>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_label_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerConcentrationRiskMember" xlink:to="lab_us-gaap_CustomerConcentrationRiskMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ManagementStockPurchasePlanCompensationExpense_c16b3e59-d372-4f74-aeb1-70c3ed6b50f5_terseLabel_en-US" xlink:label="lab_rock_ManagementStockPurchasePlanCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MSPP (recovery) expense (in thousands)</link:label>
    <link:label id="lab_rock_ManagementStockPurchasePlanCompensationExpense_label_en-US" xlink:label="lab_rock_ManagementStockPurchasePlanCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Management Stock Purchase Plan, Compensation Expense</link:label>
    <link:label id="lab_rock_ManagementStockPurchasePlanCompensationExpense_documentation_en-US" xlink:label="lab_rock_ManagementStockPurchasePlanCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Management Stock Purchase Plan, Compensation Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanCompensationExpense" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ManagementStockPurchasePlanCompensationExpense" xlink:to="lab_rock_ManagementStockPurchasePlanCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_a4b9be0c-4213-4dd4-a62d-2a208a680f02_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, net of valuation allowances</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNet" xlink:to="lab_us-gaap_DeferredTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_687a71a2-ed6c-4146-a2f8-d18e309d35d1_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveLineItems_a57e5a4b-4b2c-450a-a4ce-433f14c42583_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Cost and Reserve [Line Items]</link:label>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveLineItems_label_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Cost and Reserve [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems" xlink:to="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_3708da50-c73e-4727-ab70-e35a2b931ca4_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">DISCONTINUED OPERATIONS</link:label>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:to="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_2b723909-a003-4d47-aece-d72c9a0755a1_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Domestic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_3f514260-2118-4e1a-841a-1adf61a5732e_verboseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Annual commitment fee</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Commitment Fee Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:to="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_324f6880-ebc2-4202-913c-8da7bbae8c8c_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption, Adjustment</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption, Adjustment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount_022e1d0b-cb87-4915-abb1-6d2f6a59d333_terseLabel_en-US" xlink:label="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Executive compensation</link:label>
    <link:label id="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount_label_en-US" xlink:label="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Executive Compensation, Amount</link:label>
    <link:label id="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount_documentation_en-US" xlink:label="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Executive Compensation, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" xlink:href="rock-20221231.xsd#rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" xlink:to="lab_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_b3f5bad1-671c-4cc6-a13f-b9cb09c0274c_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine2_015946d4-02d5-444d-a9e0-23c11166a6bf_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line Two</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine2_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine2" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine2" xlink:to="lab_dei_EntityAddressAddressLine2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_cd017c70-1bc6-4f78-bdb8-0f226e2903ce_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, net of allowance</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_56317664-077d-47be-aa6a-4e2a190ff2d6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price Range, Lower Range Limit</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_5782623b-eecc-4351-a031-ba745b8197a2_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossTax_31353043-3572-4b75-af59-71ce2936c05d_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax (Benefit) Expense</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_4acb3735-99cc-416a-b47c-dfc2aa01b2cd_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfRevenue_2e369cea-f9f7-471a-a53e-9e35806d841c_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfRevenue_label_en-US" xlink:label="lab_us-gaap_CostOfRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfRevenue" xlink:to="lab_us-gaap_CostOfRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_faf9625f-47e8-4d33-9443-c67f5d8b4e47_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Option, Exercise Price Range [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_5c26399a-4b27-4c58-b3ab-46391f716cba_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unearned revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_2dc9bd17-c308-4e40-8909-095fc2021178_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with customer liability</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability" xlink:to="lab_us-gaap_ContractWithCustomerLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_af42ef1b-c504-447f-a3ec-5bc4bf5ec5d5_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of indefinite-lived intangibles</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of Intangible Assets, Indefinite-Lived (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ManagementStockPurchasePlanMember_f4721387-af76-4c51-b587-c52c02ae0ece_terseLabel_en-US" xlink:label="lab_rock_ManagementStockPurchasePlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Management Stock Purchase Plan</link:label>
    <link:label id="lab_rock_ManagementStockPurchasePlanMember_33dc44b8-14ec-4169-8513-2882e2fd1a3c_verboseLabel_en-US" xlink:label="lab_rock_ManagementStockPurchasePlanMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MSPP</link:label>
    <link:label id="lab_rock_ManagementStockPurchasePlanMember_label_en-US" xlink:label="lab_rock_ManagementStockPurchasePlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Management Stock Purchase Plan [Member]</link:label>
    <link:label id="lab_rock_ManagementStockPurchasePlanMember_documentation_en-US" xlink:label="lab_rock_ManagementStockPurchasePlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Management stock purchase plan [Member].</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanMember" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ManagementStockPurchasePlanMember" xlink:to="lab_rock_ManagementStockPurchasePlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_8ebd5ad9-7e86-4502-87da-cfa90116cca5_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnbilledContractsReceivable_b5d0a523-c56d-4052-b089-6e3735c23575_terseLabel_en-US" xlink:label="lab_us-gaap_UnbilledContractsReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs in excess of billings</link:label>
    <link:label id="lab_us-gaap_UnbilledContractsReceivable_label_en-US" xlink:label="lab_us-gaap_UnbilledContractsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unbilled Contracts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledContractsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnbilledContractsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnbilledContractsReceivable" xlink:to="lab_us-gaap_UnbilledContractsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock_d02a24bd-169f-4a1f-86a1-bd820c1e4133_terseLabel_en-US" xlink:label="lab_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Paid, Net of Tax Refunds</link:label>
    <link:label id="lab_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock_label_en-US" xlink:label="lab_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Paid And Net Of Tax Refunds [Table Text Block]</link:label>
    <link:label id="lab_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock_documentation_en-US" xlink:label="lab_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income taxes paid and net of tax refunds [Table Text Block].</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" xlink:href="rock-20221231.xsd#rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" xlink:to="lab_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_a1b07d51-6f2c-4b5a-8124-48ba952207bd_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e54e26a0-5e3e-4cf9-8b27-df3fdfb00e62_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Availability amount</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityAxis_289ddb84-a126-4f86-93c5-8ec566014763_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis" xlink:to="lab_us-gaap_CreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeAxis_a3704d26-a02e-41b2-8423-f73ad0c57186_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanTypeAxis_label_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTypeAxis" xlink:to="lab_us-gaap_RetirementPlanTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_d1c2267c-0edb-4a0d-8648-4424736738dd_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Expenses</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryValuationReserves_49b9ae4e-912c-4d54-9285-e39288e92dfb_periodStartLabel_en-US" xlink:label="lab_us-gaap_InventoryValuationReserves" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_InventoryValuationReserves_27ffbc93-9e5b-433a-916a-37f521c3307b_periodEndLabel_en-US" xlink:label="lab_us-gaap_InventoryValuationReserves" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_InventoryValuationReserves_label_en-US" xlink:label="lab_us-gaap_InventoryValuationReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryValuationReserves" xlink:to="lab_us-gaap_InventoryValuationReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_428af4b3-c7ea-4c0e-8316-ad804a232fa1_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MachineryAndEquipmentMember_79b3612c-5390-4471-a19e-965b21b806b9_terseLabel_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Machinery and Equipment</link:label>
    <link:label id="lab_us-gaap_MachineryAndEquipmentMember_label_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Machinery and Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentMember" xlink:to="lab_us-gaap_MachineryAndEquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_1c9ddc0c-604d-415e-84b6-21b0bb844835_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_41fd45cb-a77f-4195-8bcb-539fd2618a63_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_4f3b1237-94d6-4ade-b12e-7de453eeed96_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_c6bd1e69-3ce2-488f-b619-64a664622be1_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of shares authorized</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax_8cefd179-46b1-4e4d-b0ea-aae3bab7ad12_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum post retirement benefit plan adjustments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_64f43679-4c32-463b-ae65-2d63e493ceb5_totalLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Under funded status</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Funded (Unfunded) Status of Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:to="lab_us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_4044c1f0-2c62-45da-b6dd-efd0aae71cec_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Number of Awards and Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_367583fb-b23e-4ba5-b363-0bc0d829d107_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock units balance, vested and unvested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostTable_eaf45a0a-9181-4a07-8dd8-d9c246166bad_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Table]</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostTable_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostTable" xlink:to="lab_us-gaap_CapitalizedContractCostTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdvertisingExpense_ffc94401-98a9-4935-93b1-6a23d58bb916_terseLabel_en-US" xlink:label="lab_us-gaap_AdvertisingExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising costs</link:label>
    <link:label id="lab_us-gaap_AdvertisingExpense_label_en-US" xlink:label="lab_us-gaap_AdvertisingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingExpense" xlink:to="lab_us-gaap_AdvertisingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_ad5add74-30a9-47a8-a7e9-b05dd8f74dac_negatedLabel_en-US" xlink:label="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts written off against allowance and other adjustments</link:label>
    <link:label id="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_label_en-US" xlink:label="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing Receivable, Allowance for Credit Loss, Writeoff</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:to="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_5dafe714-d1df-440a-860b-684b781e7cb4_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_142d25d6-a168-4576-996b-6effaaaad7d4_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent_194ce73d-27a8-4ee4-bbfc-3b4a0ccf6b88_terseLabel_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percent of grants awarded based on target threshold</link:label>
    <link:label id="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent_label_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other Than Options, Grants Based On Targeted Thresholds, Percent</link:label>
    <link:label id="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent_documentation_en-US" xlink:label="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other Than Options, Grants Based On Targeted Thresholds, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" xlink:to="lab_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_3a27c4ff-ea44-45ea-8cfd-6ff2d7617fc3_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ApplicableRatePeriod1Member_ac2430c9-49db-4afe-9362-53bbace8ebe2_terseLabel_en-US" xlink:label="lab_rock_ApplicableRatePeriod1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Applicable rate through March 31, 2023</link:label>
    <link:label id="lab_rock_ApplicableRatePeriod1Member_label_en-US" xlink:label="lab_rock_ApplicableRatePeriod1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Applicable Rate Period 1 [Member]</link:label>
    <link:label id="lab_rock_ApplicableRatePeriod1Member_documentation_en-US" xlink:label="lab_rock_ApplicableRatePeriod1Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Applicable Rate Period 1</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApplicableRatePeriod1Member" xlink:href="rock-20221231.xsd#rock_ApplicableRatePeriod1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ApplicableRatePeriod1Member" xlink:to="lab_rock_ApplicableRatePeriod1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncompeteAgreementsMember_b7e532e5-f248-4ead-b732-1e79b3ce9930_terseLabel_en-US" xlink:label="lab_us-gaap_NoncompeteAgreementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-compete agreements</link:label>
    <link:label id="lab_us-gaap_NoncompeteAgreementsMember_label_en-US" xlink:label="lab_us-gaap_NoncompeteAgreementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncompete Agreements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncompeteAgreementsMember" xlink:to="lab_us-gaap_NoncompeteAgreementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesOther_2ffecc48-d1f2-4533-bd73-832e8008b960_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesOther" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of restricted stock, shares</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesOther_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesOther" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesOther" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_bfb202d8-9b3d-4a9b-949d-20082f9e4f50_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification from discontinued operations upon sale of industrial group</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Increase (Decrease) Adjustment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_d71a6866-9dcf-4162-8d17-1cd71563d9fe_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized actuarial gain</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Accumulated Other Comprehensive Income (Loss), Gain (Loss), before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax" xlink:to="lab_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_6e7d9563-5933-42bd-a30f-be526f6214ac_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_AsiaMember_1a2b3b5b-c9d9-4707-b5b8-679fe4137d00_terseLabel_en-US" xlink:label="lab_srt_AsiaMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asia</link:label>
    <link:label id="lab_srt_AsiaMember_label_en-US" xlink:label="lab_srt_AsiaMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asia [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_AsiaMember" xlink:to="lab_srt_AsiaMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_9dd1b727-493a-44b3-8004-1cd5f5cf97b7_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net increase (decrease) in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_f3d8f7ba-27b0-4efa-8c61-74e56d8b5330_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State taxes, less federal effect</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:to="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue_1b444408-e774-465a-ab91-c7efaa445722_terseLabel_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments (in USD per share)</link:label>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue_documentation_en-US" xlink:label="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_13bc881b-264f-49bb-bea4-7ff700416728_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Liability for Exit Activity Costs Relating to Facility Consolidation Efforts</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring Reserve by Type of Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:to="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock_659f027f-38ac-458f-aa3b-691f4b93a077_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Exit Activity Costs and Asset Impairments Recorded in the Consolidated Statements of Operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Costs [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_f510bcd3-6741-4f75-98ce-3d91f6ea001d_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_80812e68-088a-4690-8713-a84299563418_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesNameDomain_b824e3d3-024d-492f-afee-1fd12a45c4c7_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesNameDomain_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="lab_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_cfbe25c6-e410-458c-815f-9774bdc31698_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_72b77d29-74e3-4fcd-a24c-65aa43aabc5b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Grant Date Fair Value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_RetirementPlanNumberOfPlans_6bbc5c65-bb32-43b0-8314-d1fbdc009075_terseLabel_en-US" xlink:label="lab_rock_RetirementPlanNumberOfPlans" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of plans</link:label>
    <link:label id="lab_rock_RetirementPlanNumberOfPlans_label_en-US" xlink:label="lab_rock_RetirementPlanNumberOfPlans" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan, Number Of Plans</link:label>
    <link:label id="lab_rock_RetirementPlanNumberOfPlans_documentation_en-US" xlink:label="lab_rock_RetirementPlanNumberOfPlans" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan, Number Of Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RetirementPlanNumberOfPlans" xlink:href="rock-20221231.xsd#rock_RetirementPlanNumberOfPlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_RetirementPlanNumberOfPlans" xlink:to="lab_rock_RetirementPlanNumberOfPlans" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_7f6a0962-7175-474e-ac16-f97ebe41ae51_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_ab7cabe0-167e-4384-acc8-08050118d558_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_bfebded8-8418-4460-8f39-e7f2c46ae997_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition purchase price</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Consideration Transferred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_2d7ac75d-8b7c-4d50-9e50-55bebb1a8ff4_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MeasurementInputTypeAxis_96aa7b42-2fd3-4ac5-9c85-9c97fa51d633_terseLabel_en-US" xlink:label="lab_us-gaap_MeasurementInputTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Input Type [Axis]</link:label>
    <link:label id="lab_us-gaap_MeasurementInputTypeAxis_label_en-US" xlink:label="lab_us-gaap_MeasurementInputTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Input Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MeasurementInputTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MeasurementInputTypeAxis" xlink:to="lab_us-gaap_MeasurementInputTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_7726d7e5-7d2f-4925-a838-147aa565776b_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_2faeb184-7801-48c9-b036-ed07ad6055ba_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_6c37a1b5-b6d7-42a3-8ad0-347dfa55f311_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeDomain" xlink:to="lab_us-gaap_LongtermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_09918218-3fc0-4f6f-aa4b-56fcfea44980_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_9c4eb832-cdb1-44df-b95f-48d2cc229346_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statutory rate</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdvertisingCostsPolicyTextBlock_36caf798-b800-4d4f-803a-89630bf2e807_terseLabel_en-US" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising</link:label>
    <link:label id="lab_us-gaap_AdvertisingCostsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising Cost [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingCostsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:to="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_5b2c8b0e-44de-48df-b909-89bac30ff7a5_totalLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net amount recognized</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_9b2f8332-53c8-45b8-997e-499d5ae0acc1_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net amount recognized</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Amounts for Asset (Liability) Recognized in Statement of Financial Position</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet" xlink:to="lab_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_8a524c3b-fbfc-492b-8fb1-7d4b0078fed0_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Flows from Financing Activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostLineItems_b05d7bfd-594b-4fef-b465-2e1a68ed0553_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Line Items]</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostLineItems_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems" xlink:to="lab_us-gaap_CapitalizedContractCostLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_726b6990-cf28-442b-a323-81fecdde6213_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation expense</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_9d63771d-7b02-4529-a5a4-d9456044438a_totalLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total stock compensation expense</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement_89fe523a-ae00-4784-8309-ae3294d0a8cf_terseLabel_en-US" xlink:label="lab_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net settlement of restricted stock units, shares</link:label>
    <link:label id="lab_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement_label_en-US" xlink:label="lab_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Restricted Stock Award, Settlement</link:label>
    <link:label id="lab_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement_documentation_en-US" xlink:label="lab_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Restricted Stock Award, Settlement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" xlink:href="rock-20221231.xsd#rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" xlink:to="lab_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateAxis_f989e51c-2b2f-4281-977e-465aaeaef995_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:label id="lab_us-gaap_VariableRateAxis_label_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateAxis" xlink:to="lab_us-gaap_VariableRateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_2033d280-44ca-4254-a7c4-a3ef499df29e_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other non-current liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_NorthAmericaMember_1c0b071b-e83e-4c3c-ab5a-771e17f8dc60_terseLabel_en-US" xlink:label="lab_srt_NorthAmericaMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">North America</link:label>
    <link:label id="lab_srt_NorthAmericaMember_label_en-US" xlink:label="lab_srt_NorthAmericaMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">North America [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NorthAmericaMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NorthAmericaMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NorthAmericaMember" xlink:to="lab_srt_NorthAmericaMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentContinuingOperationsMember_2eb4c2a5-a217-46aa-92fe-922ee97c678d_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentContinuingOperationsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Continuing Operations</link:label>
    <link:label id="lab_us-gaap_SegmentContinuingOperationsMember_label_en-US" xlink:label="lab_us-gaap_SegmentContinuingOperationsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Continuing Operations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentContinuingOperationsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentContinuingOperationsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentContinuingOperationsMember" xlink:to="lab_us-gaap_SegmentContinuingOperationsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupClassificationDomain_45873334-0184-46cc-9e1f-0a27a3f80d10_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Classification [Domain]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupClassificationDomain_label_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group Classification [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain" xlink:to="lab_us-gaap_DisposalGroupClassificationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_d7ebd6b6-ef70-475d-b325-a00ecff5aac5_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital expenditures</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MachineryAndEquipmentGross_920a0f1e-44c6-477e-8867-c8270c234c1d_verboseLabel_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Machinery and equipment</link:label>
    <link:label id="lab_us-gaap_MachineryAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Machinery and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentGross" xlink:to="lab_us-gaap_MachineryAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_adcf0006-cfa9-4bd0-af98-2b7ad3cad040_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_af410355-7006-4117-90e2-89c1627e8eb0_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2020</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_7bf3ced5-71ed-43a5-a099-5969ee530a40_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net proceeds from sale of business</link:label>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_label_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Divestiture of Businesses, Net of Cash Divested</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:to="lab_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligation_43daf4c4-c631-4fac-b9cd-ef9c8f4fc1dd_periodStartLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligation" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Projected benefit obligation at</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligation_422373a8-cbc8-4d9f-aa46-8249c37c0fb0_periodEndLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligation" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Projected benefit obligation at</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligation_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Benefit Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanBenefitObligation" xlink:to="lab_us-gaap_DefinedBenefitPlanBenefitObligation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_93892c39-63c6-4c4f-b4c6-bf83df87af6c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Computation of Basic and Diluted Earnings per Share</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_589369a5-7d16-4102-b15a-0f5ac6518764_terseLabel_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right-of-use assets obtained in exchange for new lease liabilities</link:label>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfSalesMember_4e398876-3dd4-4223-868c-0eb46b6d6e55_verboseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfSalesMember_e8ce1122-900e-4fd1-a3f2-03cea69f9dba_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfSalesMember_label_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Sales [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_c62885c2-1add-40d7-a7f5-df02865e036d_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Amount [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense (Benefit), Effective Income Tax Rate Reconciliation, Amount [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_7808b6ac-71bd-49a5-bd24-9d69ed9ebc01_terseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_label_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain" xlink:to="lab_srt_NameOfMajorCustomerDomain" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>13
<FILENAME>rock-20221231_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:494ce7ad-dd21-4422-be07-151863b91ba7,g:883578fa-a7f5-4214-bb5b-e80105339f54-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.gibraltar1.com/role/CoverPage" xlink:type="simple" xlink:href="rock-20221231.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_c3d7af1e-a89f-47e9-9270-3479870f5d15" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_DocumentType_c3d7af1e-a89f-47e9-9270-3479870f5d15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentAnnualReport_6a40a1f0-f4f4-4a9e-a9e4-d23d2408b21d" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_DocumentAnnualReport_6a40a1f0-f4f4-4a9e-a9e4-d23d2408b21d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_2c375d0b-0f3c-42fe-82ff-fe4f68b139cb" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_DocumentPeriodEndDate_2c375d0b-0f3c-42fe-82ff-fe4f68b139cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_e6725f26-b028-4adc-a62a-f96455896e10" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_CurrentFiscalYearEndDate_e6725f26-b028-4adc-a62a-f96455896e10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_e32e1af7-6a72-42b3-9eda-c4b47bc1c3bd" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_DocumentTransitionReport_e32e1af7-6a72-42b3-9eda-c4b47bc1c3bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_c1b43df8-545f-40fc-a9fa-81410fc2cb06" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityFileNumber_c1b43df8-545f-40fc-a9fa-81410fc2cb06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_428ab091-4688-4ff3-9d76-bd52a632100a" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityRegistrantName_428ab091-4688-4ff3-9d76-bd52a632100a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_18290df5-f76e-4285-98af-9fbe76d737b9" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityIncorporationStateCountryCode_18290df5-f76e-4285-98af-9fbe76d737b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_66ab568b-fe8c-40d8-9c00-386de25f4c0a" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityTaxIdentificationNumber_66ab568b-fe8c-40d8-9c00-386de25f4c0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_3f08f26e-d19f-41de-8ad4-e2ce7aef61b2" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityAddressAddressLine1_3f08f26e-d19f-41de-8ad4-e2ce7aef61b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine2_2f64263f-d517-4638-a8d5-b6330771e3ef" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine2"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityAddressAddressLine2_2f64263f-d517-4638-a8d5-b6330771e3ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_e2729164-dac8-4e29-9d45-ade32cd92bcd" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityAddressCityOrTown_e2729164-dac8-4e29-9d45-ade32cd92bcd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_2202ab0b-b3db-47cd-a8c1-88b7c4b1686c" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityAddressStateOrProvince_2202ab0b-b3db-47cd-a8c1-88b7c4b1686c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_6e79303b-0e29-4f64-b4fb-488e95023718" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityAddressPostalZipCode_6e79303b-0e29-4f64-b4fb-488e95023718" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_57119be1-795b-4173-a909-7b6f99424d16" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_CityAreaCode_57119be1-795b-4173-a909-7b6f99424d16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_34a6aaed-02c8-46aa-9a3b-68554b6eb561" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_LocalPhoneNumber_34a6aaed-02c8-46aa-9a3b-68554b6eb561" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_bb7c3753-a9dd-4d43-9333-b2afc46b0383" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_Security12bTitle_bb7c3753-a9dd-4d43-9333-b2afc46b0383" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_db3adff8-4dbe-43a7-b1df-80a9aff0256b" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_TradingSymbol_db3adff8-4dbe-43a7-b1df-80a9aff0256b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_3bc16ed6-2315-4e38-94bb-fb95ca3ba373" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_SecurityExchangeName_3bc16ed6-2315-4e38-94bb-fb95ca3ba373" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_008cef5a-fc39-4bd0-8973-d57f68156072" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityWellKnownSeasonedIssuer_008cef5a-fc39-4bd0-8973-d57f68156072" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityVoluntaryFilers_80257c41-5aaa-4254-b863-be82840c081e" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityVoluntaryFilers_80257c41-5aaa-4254-b863-be82840c081e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_db9a7bc1-f8a0-4d57-b6b0-edb89c604091" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityCurrentReportingStatus_db9a7bc1-f8a0-4d57-b6b0-edb89c604091" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_d4252e54-5d2c-42cb-a5b5-11e0183705ca" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityInteractiveDataCurrent_d4252e54-5d2c-42cb-a5b5-11e0183705ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_62ba0098-6b2e-4766-be57-dfdcaa5742a0" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityFilerCategory_62ba0098-6b2e-4766-be57-dfdcaa5742a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_8d358b11-5304-47bc-a699-e19ae863a88f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntitySmallBusiness_8d358b11-5304-47bc-a699-e19ae863a88f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_c9a86143-b063-45fe-8367-35e45478c17b" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityEmergingGrowthCompany_c9a86143-b063-45fe-8367-35e45478c17b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_IcfrAuditorAttestationFlag_202e928a-259a-4c2e-9878-b9ff686c09d6" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_IcfrAuditorAttestationFlag_202e928a-259a-4c2e-9878-b9ff686c09d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_e97aab25-bc23-4a14-adfa-cf146ff6a8b5" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityShellCompany_e97aab25-bc23-4a14-adfa-cf146ff6a8b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityPublicFloat_e1d8de5a-0bba-449b-a9a8-98c2b55c568f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityPublicFloat_e1d8de5a-0bba-449b-a9a8-98c2b55c568f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_ddcc996c-19ff-4609-8291-d92cfdb28286" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_ddcc996c-19ff-4609-8291-d92cfdb28286" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock_354f417b-0982-4692-8f20-adb9c64854a5" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentsIncorporatedByReferenceTextBlock"/>
    <link:presentationArc order="31" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_DocumentsIncorporatedByReferenceTextBlock_354f417b-0982-4692-8f20-adb9c64854a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_ca2f45e7-01e0-4dcf-82e4-bca4270fb341" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="32" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_AmendmentFlag_ca2f45e7-01e0-4dcf-82e4-bca4270fb341" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_da5033dd-caf0-4a9a-abe2-077ba9ec7ce3" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="33" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_DocumentFiscalYearFocus_da5033dd-caf0-4a9a-abe2-077ba9ec7ce3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_7521229d-822c-4915-a357-31da5082a3cb" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="34" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_DocumentFiscalPeriodFocus_7521229d-822c-4915-a357-31da5082a3cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_77f354fe-80ff-48ef-a6d9-3dd86750f031" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="35" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_188958e4-2519-4309-b526-423a52b1fe2d" xlink:to="loc_dei_EntityCentralIndexKey_77f354fe-80ff-48ef-a6d9-3dd86750f031" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AuditInformation" xlink:type="simple" xlink:href="rock-20221231.xsd#AuditInformation"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AuditInformation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_AuditInformationAbstract_bcaf803c-f045-4731-8dca-e3c3c6ee4697" xlink:href="rock-20221231.xsd#rock_AuditInformationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorName_e9e5b71a-478f-4f86-960b-777efe056c10" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_AuditInformationAbstract_bcaf803c-f045-4731-8dca-e3c3c6ee4697" xlink:to="loc_dei_AuditorName_e9e5b71a-478f-4f86-960b-777efe056c10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorLocation_97ffcff7-1088-454e-8073-c34a8a6e5aea" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_AuditInformationAbstract_bcaf803c-f045-4731-8dca-e3c3c6ee4697" xlink:to="loc_dei_AuditorLocation_97ffcff7-1088-454e-8073-c34a8a6e5aea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorFirmId_1f1c299c-adef-46c7-a8ab-b74d4a792771" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_AuditInformationAbstract_bcaf803c-f045-4731-8dca-e3c3c6ee4697" xlink:to="loc_dei_AuditorFirmId_1f1c299c-adef-46c7-a8ab-b74d4a792771" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofOperations"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_b09a762a-2f79-4a08-b92a-52f2aa217a82" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_Revenues_b09a762a-2f79-4a08-b92a-52f2aa217a82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenue_5d251c1a-37d2-446c-b951-5fd6a3f25507" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_CostOfRevenue_5d251c1a-37d2-446c-b951-5fd6a3f25507" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_4a419f18-8d27-436b-b74f-c39837c8b68c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_GrossProfit_4a419f18-8d27-436b-b74f-c39837c8b68c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_d6f8add3-1d5e-488f-9b3a-be63c8d75d7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_d6f8add3-1d5e-488f-9b3a-be63c8d75d7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_be9b0453-b3a0-4563-807d-c5b1c36ace58" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_be9b0453-b3a0-4563-807d-c5b1c36ace58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_7b5025d0-0d65-41b8-b29c-fd1ce0a66d99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_OperatingIncomeLoss_7b5025d0-0d65-41b8-b29c-fd1ce0a66d99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNet_8ef940ab-31fb-480e-a0d8-75cecf2f13e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeExpenseNet"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_InterestIncomeExpenseNet_8ef940ab-31fb-480e-a0d8-75cecf2f13e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncome_165ae5e5-a0ac-4ab9-87bf-f84c454e56bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncome"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_OtherIncome_165ae5e5-a0ac-4ab9-87bf-f84c454e56bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_26c855de-bee0-4f0d-9060-73d07d32ad4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_26c855de-bee0-4f0d-9060-73d07d32ad4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_218c0920-da28-4f0d-b54f-1170ae5659c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_218c0920-da28-4f0d-b54f-1170ae5659c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_f460d160-cfaf-4669-957f-ee582fbf35cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_f460d160-cfaf-4669-957f-ee582fbf35cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_4b72b464-fb59-43be-ad5a-c4cd07ee91d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLossAttributableToReportingEntityAbstract"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_4b72b464-fb59-43be-ad5a-c4cd07ee91d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2d26763f-e6e3-43ea-b0ff-fd1ef91a304c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_4b72b464-fb59-43be-ad5a-c4cd07ee91d9" xlink:to="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2d26763f-e6e3-43ea-b0ff-fd1ef91a304c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_8cd974f6-6e81-4034-8fe1-1400388ff017" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_4b72b464-fb59-43be-ad5a-c4cd07ee91d9" xlink:to="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_8cd974f6-6e81-4034-8fe1-1400388ff017" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_03f6c023-58a0-45cc-b22e-58992ff1ad8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_4b72b464-fb59-43be-ad5a-c4cd07ee91d9" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_03f6c023-58a0-45cc-b22e-58992ff1ad8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_dfa5788d-c03e-4269-8733-4da9ac62e376" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract_4b72b464-fb59-43be-ad5a-c4cd07ee91d9" xlink:to="loc_us-gaap_NetIncomeLoss_dfa5788d-c03e-4269-8733-4da9ac62e376" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_93cd4ab8-e946-4f49-a50c-2f5e61338b79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_EarningsPerShareAbstract_93cd4ab8-e946-4f49-a50c-2f5e61338b79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_ee214ae4-488d-42d2-9c92-cb51870568f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_93cd4ab8-e946-4f49-a50c-2f5e61338b79" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_ee214ae4-488d-42d2-9c92-cb51870568f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_1dd2382f-d246-43a1-89a5-2f6476d3a227" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_93cd4ab8-e946-4f49-a50c-2f5e61338b79" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_1dd2382f-d246-43a1-89a5-2f6476d3a227" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_92ba328c-5825-4577-b549-0e49af8061da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_93cd4ab8-e946-4f49-a50c-2f5e61338b79" xlink:to="loc_us-gaap_EarningsPerShareBasic_92ba328c-5825-4577-b549-0e49af8061da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_1ca26bd0-73e9-4ff5-ba51-bce7905fa500" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_93cd4ab8-e946-4f49-a50c-2f5e61338b79" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_1ca26bd0-73e9-4ff5-ba51-bce7905fa500" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract_7086d481-c4b2-4684-8b48-2e420b22eee9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_1db2f39e-4a36-4bff-b1e6-81d68ecf5e6f" xlink:to="loc_us-gaap_EarningsPerShareDilutedAbstract_7086d481-c4b2-4684-8b48-2e420b22eee9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_3285f562-cea8-4c2d-ab37-1f18eab67f1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_7086d481-c4b2-4684-8b48-2e420b22eee9" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_3285f562-cea8-4c2d-ab37-1f18eab67f1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_810a9f0c-ff41-40fa-9daf-64a9c9233f6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_7086d481-c4b2-4684-8b48-2e420b22eee9" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_810a9f0c-ff41-40fa-9daf-64a9c9233f6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_0a5ce948-049e-4e6b-a1df-927f1a04a4e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_7086d481-c4b2-4684-8b48-2e420b22eee9" xlink:to="loc_us-gaap_EarningsPerShareDiluted_0a5ce948-049e-4e6b-a1df-927f1a04a4e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_fdacda93-e049-4e2b-b16a-f81c82fd6f5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_7086d481-c4b2-4684-8b48-2e420b22eee9" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_fdacda93-e049-4e2b-b16a-f81c82fd6f5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_4cfbada0-2f38-4856-af34-296208d464d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_1ecb2561-666b-4a9e-bcd1-c5cc98359d78" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_4cfbada0-2f38-4856-af34-296208d464d3" xlink:to="loc_us-gaap_NetIncomeLoss_1ecb2561-666b-4a9e-bcd1-c5cc98359d78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_944f27aa-5b40-4a7d-ad3b-8ccafe07ee97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_4cfbada0-2f38-4856-af34-296208d464d3" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_944f27aa-5b40-4a7d-ad3b-8ccafe07ee97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_d5961ba7-f52b-41ad-807c-1a861b8d7cea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_944f27aa-5b40-4a7d-ad3b-8ccafe07ee97" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_d5961ba7-f52b-41ad-807c-1a861b8d7cea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_938e15b1-ff41-46df-89fe-5fa61013e742" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_944f27aa-5b40-4a7d-ad3b-8ccafe07ee97" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_938e15b1-ff41-46df-89fe-5fa61013e742" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_de80a497-b8ff-4d91-bb44-4726ff4173f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_944f27aa-5b40-4a7d-ad3b-8ccafe07ee97" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_de80a497-b8ff-4d91-bb44-4726ff4173f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_d4036f2d-d4de-4fed-b703-cdc3c66cc79b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_4cfbada0-2f38-4856-af34-296208d464d3" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_d4036f2d-d4de-4fed-b703-cdc3c66cc79b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_35d720d7-b3a5-4ad3-bfab-666a88fb098f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_35d720d7-b3a5-4ad3-bfab-666a88fb098f" xlink:to="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_873b835d-8cd4-49c6-969e-a035c5433bd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:to="loc_us-gaap_AssetsCurrentAbstract_873b835d-8cd4-49c6-969e-a035c5433bd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_34ee527d-020e-4040-9d82-01a75a9bf0ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_873b835d-8cd4-49c6-969e-a035c5433bd0" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_34ee527d-020e-4040-9d82-01a75a9bf0ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_84ce99aa-f830-48cf-b779-f6c44c49e5f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_873b835d-8cd4-49c6-969e-a035c5433bd0" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_84ce99aa-f830-48cf-b779-f6c44c49e5f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_c00f5e25-8e13-4235-a487-d3ce557db448" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_873b835d-8cd4-49c6-969e-a035c5433bd0" xlink:to="loc_us-gaap_InventoryNet_c00f5e25-8e13-4235-a487-d3ce557db448" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsCurrent_e0db2920-ec63-4a74-ad0b-95f64e2d2966" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_873b835d-8cd4-49c6-969e-a035c5433bd0" xlink:to="loc_us-gaap_OtherAssetsCurrent_e0db2920-ec63-4a74-ad0b-95f64e2d2966" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_a7fa6ad6-8bec-4ebb-b449-a7079182bd75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_873b835d-8cd4-49c6-969e-a035c5433bd0" xlink:to="loc_us-gaap_AssetsCurrent_a7fa6ad6-8bec-4ebb-b449-a7079182bd75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_31389fb6-d019-4041-9628-4d743f8345dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_31389fb6-d019-4041-9628-4d743f8345dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_c724925f-ed08-43ed-9ba7-2a6ea388655a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_c724925f-ed08-43ed-9ba7-2a6ea388655a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_61216143-57f2-4854-bcd2-28b44036ce5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:to="loc_us-gaap_Goodwill_61216143-57f2-4854-bcd2-28b44036ce5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_89cf970b-1bb6-4c30-a71a-92599091b2d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_89cf970b-1bb6-4c30-a71a-92599091b2d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_44e2b0c0-264e-436b-a9c7-daf03645f284" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_44e2b0c0-264e-436b-a9c7-daf03645f284" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_13dae777-7054-46e7-99cf-b486e0c50bb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_44f4f94c-08df-4eb0-81bb-202bd786299b" xlink:to="loc_us-gaap_Assets_13dae777-7054-46e7-99cf-b486e0c50bb8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_35d720d7-b3a5-4ad3-bfab-666a88fb098f" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_c93ddbd1-f1b7-4599-adbe-c4b0e679deb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_c93ddbd1-f1b7-4599-adbe-c4b0e679deb8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_6640acf4-fd0d-4b45-b3b7-f361777424c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c93ddbd1-f1b7-4599-adbe-c4b0e679deb8" xlink:to="loc_us-gaap_AccountsPayableCurrent_6640acf4-fd0d-4b45-b3b7-f361777424c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_67d76caa-2136-4fe8-97d3-2e1212707fb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c93ddbd1-f1b7-4599-adbe-c4b0e679deb8" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_67d76caa-2136-4fe8-97d3-2e1212707fb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_0f74fb7f-c856-468a-9b47-4c5abfba41a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c93ddbd1-f1b7-4599-adbe-c4b0e679deb8" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_0f74fb7f-c856-468a-9b47-4c5abfba41a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_323fc11c-fe51-4f43-9da6-7a98c5ef8bed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c93ddbd1-f1b7-4599-adbe-c4b0e679deb8" xlink:to="loc_us-gaap_LiabilitiesCurrent_323fc11c-fe51-4f43-9da6-7a98c5ef8bed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_a0eb1169-f47b-4ea4-927b-683df613f4ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_a0eb1169-f47b-4ea4-927b-683df613f4ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_fe4cac88-0357-409f-b793-b3cade21bd6c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_fe4cac88-0357-409f-b793-b3cade21bd6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_e83d0ec4-3e24-4695-9f4c-63d09655f189" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_e83d0ec4-3e24-4695-9f4c-63d09655f189" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_dabaaea9-4b29-46e9-859b-311e31b94865" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_dabaaea9-4b29-46e9-859b-311e31b94865" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:to="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_61cd15ab-400b-44b4-9565-c02ca3fb2e43" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:to="loc_us-gaap_PreferredStockValue_61cd15ab-400b-44b4-9565-c02ca3fb2e43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_73ee27db-5a4e-4e02-abdd-7c600cf243ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:to="loc_us-gaap_CommonStockValue_73ee27db-5a4e-4e02-abdd-7c600cf243ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital_a9da06c2-f4b5-480c-90e7-678134a53b6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:to="loc_us-gaap_AdditionalPaidInCapital_a9da06c2-f4b5-480c-90e7-678134a53b6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_f2ffbb5d-ac1e-4966-96fe-f00740e17794" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_f2ffbb5d-ac1e-4966-96fe-f00740e17794" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_4cd70596-8433-42ca-9b4f-6e48210d17c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_4cd70596-8433-42ca-9b4f-6e48210d17c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_6f7b7eac-c148-4b76-80f2-958dfb848e50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:to="loc_us-gaap_TreasuryStockValue_6f7b7eac-c148-4b76-80f2-958dfb848e50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_11229fdd-7c3e-4208-8ebc-c95c5c6a2930" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_225cb23c-da20-45ba-8557-5e561aa1272f" xlink:to="loc_us-gaap_StockholdersEquity_11229fdd-7c3e-4208-8ebc-c95c5c6a2930" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_127606fe-6bbd-4fd5-a0db-6a79ec5ba130" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_fb1103d1-88f9-4e4f-a543-072376d1491d" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_127606fe-6bbd-4fd5-a0db-6a79ec5ba130" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedBalanceSheetsParenthetical"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_025523e4-2e87-45c4-b209-5ce87a56a307" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_025523e4-2e87-45c4-b209-5ce87a56a307" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_2234699c-e651-4dc5-94c3-5a0d76993bbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_2234699c-e651-4dc5-94c3-5a0d76993bbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_a3b45e8d-94df-4b01-acb8-f6af73a4de5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_a3b45e8d-94df-4b01-acb8-f6af73a4de5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_d47d12c9-3078-470f-ad22-578ae21802f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_d47d12c9-3078-470f-ad22-578ae21802f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_f4f2c980-1551-4197-97b4-d51b7d45ba44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_f4f2c980-1551-4197-97b4-d51b7d45ba44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_ed7ccf80-7f76-48e6-922b-0650fd9ba522" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_ed7ccf80-7f76-48e6-922b-0650fd9ba522" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_d89b9cde-d8f3-428d-8bab-4e3717dc9c8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_CommonStockSharesIssued_d89b9cde-d8f3-428d-8bab-4e3717dc9c8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_4762e23c-184f-46ca-8f5a-83975eef1744" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_4762e23c-184f-46ca-8f5a-83975eef1744" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockShares_17701cff-80b1-433c-800e-d38d85961686" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0012138-e743-4c97-8350-c1ddcb0af1d0" xlink:to="loc_us-gaap_TreasuryStockShares_17701cff-80b1-433c-800e-d38d85961686" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_605bc6e7-e5f9-473e-846a-a477fef1f491" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_605bc6e7-e5f9-473e-846a-a477fef1f491" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_2bd7ada9-bb16-42b7-beb0-80b5048fde6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_605bc6e7-e5f9-473e-846a-a477fef1f491" xlink:to="loc_us-gaap_NetIncomeLoss_2bd7ada9-bb16-42b7-beb0-80b5048fde6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_3dd6a704-cf26-4fd0-9afc-8b5868434fd5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_605bc6e7-e5f9-473e-846a-a477fef1f491" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_3dd6a704-cf26-4fd0-9afc-8b5868434fd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_e422559d-4981-4eeb-8d2e-ab49af577a8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_605bc6e7-e5f9-473e-846a-a477fef1f491" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_e422559d-4981-4eeb-8d2e-ab49af577a8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_605bc6e7-e5f9-473e-846a-a477fef1f491" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_ae7df3a2-b220-4c7c-94d8-e7f38415dfda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_ae7df3a2-b220-4c7c-94d8-e7f38415dfda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_015bfd95-6fa6-4143-adfa-b79ad8c23fe3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetImpairment_015bfd95-6fa6-4143-adfa-b79ad8c23fe3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_aab013b0-94c2-4960-9733-6bf0a831cd11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_aab013b0-94c2-4960-9733-6bf0a831cd11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_e0d927e7-a2e4-4893-a488-7b8e383e89ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:to="loc_us-gaap_ShareBasedCompensation_e0d927e7-a2e4-4893-a488-7b8e383e89ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_cd98f57a-6bf7-4f6b-9172-be5e5c6b5c7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:to="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_cd98f57a-6bf7-4f6b-9172-be5e5c6b5c7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_43c8da71-e665-4778-a484-f5b00e818f15" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_43c8da71-e665-4778-a484-f5b00e818f15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_881b23f7-9ad9-41d1-a22a-1604c06bbf0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f91013fd-fd64-4769-9389-26d3e9dbfe19" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_881b23f7-9ad9-41d1-a22a-1604c06bbf0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_605bc6e7-e5f9-473e-846a-a477fef1f491" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_915f1353-2dc5-4d89-a55b-f723cee5d339" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_915f1353-2dc5-4d89-a55b-f723cee5d339" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_5dfc6d38-69dc-46a2-94d9-791e12ec2816" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_5dfc6d38-69dc-46a2-94d9-791e12ec2816" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_55389038-24e6-4686-bd96-545bd00ae97a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_55389038-24e6-4686-bd96-545bd00ae97a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_ed215bb6-fcb5-4d61-b7d1-dff9e0461b5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_ed215bb6-fcb5-4d61-b7d1-dff9e0461b5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_0d8bb2ff-8567-47cd-92c0-798fe49b1b63" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_0d8bb2ff-8567-47cd-92c0-798fe49b1b63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a13c18ef-d409-4600-ba74-a827f79355cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a13c18ef-d409-4600-ba74-a827f79355cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_fab530c9-8edb-40a5-a948-fc3aa8cdad8b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_fab530c9-8edb-40a5-a948-fc3aa8cdad8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_f9a7b469-1cd8-44d7-ad74-ce8d768c958c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_f6e0e567-2300-4868-a944-b3aa70566a4a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_f9a7b469-1cd8-44d7-ad74-ce8d768c958c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet_3a39a217-4883-4c6c-a8de-74577d76a955" xlink:href="rock-20221231.xsd#rock_PaymentsToAcquirePropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:to="loc_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet_3a39a217-4883-4c6c-a8de-74577d76a955" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_c1a6ae0e-8cb7-493a-8239-e48ffa014b03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_c1a6ae0e-8cb7-493a-8239-e48ffa014b03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_dd7ebef6-3fb2-4cb8-a3d3-02a132fa69a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_dd7ebef6-3fb2-4cb8-a3d3-02a132fa69a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_7ff4f181-216c-4e18-9c49-15deb1489fed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_7ff4f181-216c-4e18-9c49-15deb1489fed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_3fd97bb9-8083-4d3a-b285-625583829fdc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:to="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_3fd97bb9-8083-4d3a-b285-625583829fdc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_2bd287bb-0945-4ef1-88a8-0cc802eb9a49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d18baa38-a69a-4f4d-8180-298759568e9a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_2bd287bb-0945-4ef1-88a8-0cc802eb9a49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_5c22e75f-8b6d-44a6-b390-9eabf1136082" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_5c22e75f-8b6d-44a6-b390-9eabf1136082" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_311983aa-a430-4ab5-9256-731b054c78dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_311983aa-a430-4ab5-9256-731b054c78dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts_ec8cc69d-3bd9-4342-a137-8650a802e135" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:to="loc_us-gaap_PaymentsOfFinancingCosts_ec8cc69d-3bd9-4342-a137-8650a802e135" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_7c1bd20d-0e02-4b2d-b8ac-2bb692cfe98e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_7c1bd20d-0e02-4b2d-b8ac-2bb692cfe98e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_68a68381-9b83-4c40-8d1b-bcdfe5381bb9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_68a68381-9b83-4c40-8d1b-bcdfe5381bb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_03166f31-b002-42b5-ad75-3532f5a01c7c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_70e2b811-7bce-4b40-be90-0b1ed2cac51e" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_03166f31-b002-42b5-ad75-3532f5a01c7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9c85ae42-0149-498e-b19a-de064c7ab193" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9c85ae42-0149-498e-b19a-de064c7ab193" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_c4968e52-da5c-4f07-aba1-2f307eb25cd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_c4968e52-da5c-4f07-aba1-2f307eb25cd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_8c99a220-c34e-4143-a783-80ded1014bf3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_8c99a220-c34e-4143-a783-80ded1014bf3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_37856e9c-02c4-4350-8e4c-4c6c472951bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_abadbd12-cc54-4582-9cb9-c1a30f499145" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_37856e9c-02c4-4350-8e4c-4c6c472951bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofStockholdersEquity"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_6979cc56-d026-405d-99e7-a7aa6f587779" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_6979cc56-d026-405d-99e7-a7aa6f587779" xlink:to="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_65083868-3320-4e18-8f00-86158d9f9f5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_65083868-3320-4e18-8f00-86158d9f9f5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_65083868-3320-4e18-8f00-86158d9f9f5d" xlink:to="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_b2561014-4fac-4177-9012-e9b82b44a9c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_CommonStockMember_b2561014-4fac-4177-9012-e9b82b44a9c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_e9cd5f03-bace-4f35-88e5-5b84ec213fa4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_e9cd5f03-bace-4f35-88e5-5b84ec213fa4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_8e6c07e6-6166-4eb7-8f0d-2f6cd49e177e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_RetainedEarningsMember_8e6c07e6-6166-4eb7-8f0d-2f6cd49e177e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_dce59a28-990b-405b-b19b-96a936157e60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_dce59a28-990b-405b-b19b-96a936157e60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_2e040f4e-df38-497a-a8f9-07550ad2523a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b52dcd44-899c-4751-89cb-fc22c33e210b" xlink:to="loc_us-gaap_TreasuryStockMember_2e040f4e-df38-497a-a8f9-07550ad2523a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_e25f0e67-0622-49cf-855b-95cf80e2eab7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_e25f0e67-0622-49cf-855b-95cf80e2eab7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cf49e51b-1950-4eb4-b683-849f7dfbdf7c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_e25f0e67-0622-49cf-855b-95cf80e2eab7" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cf49e51b-1950-4eb4-b683-849f7dfbdf7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_eb74c2ba-f7e0-45d9-b236-9842f1f9aa8a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_cf49e51b-1950-4eb4-b683-849f7dfbdf7c" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_eb74c2ba-f7e0-45d9-b236-9842f1f9aa8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_0e4f5ef3-e768-4e28-994a-911f281561aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_20e4f235-3279-4841-9bbb-28ab73d9729e" xlink:to="loc_us-gaap_StatementLineItems_0e4f5ef3-e768-4e28-994a-911f281561aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_0e4f5ef3-e768-4e28-994a-911f281561aa" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_8425c0c5-326e-485a-8011-2ea7598891c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesIssued"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_SharesIssued_8425c0c5-326e-485a-8011-2ea7598891c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_31e40833-a296-433f-a05f-9c31d4d07024" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockholdersEquity_31e40833-a296-433f-a05f-9c31d4d07024" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_b9aa575c-a06a-47b5-95d7-8364d55a56c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_NetIncomeLoss_b9aa575c-a06a-47b5-95d7-8364d55a56c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_39355aec-016b-4466-b9bb-0df0b18f0b28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_39355aec-016b-4466-b9bb-0df0b18f0b28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_c43749fe-5847-436c-a25c-ed1fe095c2e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_c43749fe-5847-436c-a25c-ed1fe095c2e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_6db78677-3a18-4089-86a8-468b564b32e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_6db78677-3a18-4089-86a8-468b564b32e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement_951d7a82-b7c0-45c7-92ff-a1beccc233e8" xlink:href="rock-20221231.xsd#rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement_951d7a82-b7c0-45c7-92ff-a1beccc233e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement_f62cf672-46c8-4661-87fb-8dfd9afe0ffc" xlink:href="rock-20221231.xsd#rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement_f62cf672-46c8-4661-87fb-8dfd9afe0ffc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesOther_5410ed62-939f-43bd-979f-70413bad1dd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesOther"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesOther_5410ed62-939f-43bd-979f-70413bad1dd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_a2d7b330-beb3-43d8-b2fb-0ef5f5412cb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodShares"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_a2d7b330-beb3-43d8-b2fb-0ef5f5412cb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_9ce5a9d5-0e72-4a41-94d3-538c566cdbd5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodValue"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_9ce5a9d5-0e72-4a41-94d3-538c566cdbd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_476ac823-193c-4d21-804a-30d9ce6672a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_476ac823-193c-4d21-804a-30d9ce6672a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_01c76205-7aa4-43a2-820b-dfda85a50646" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_01c76205-7aa4-43a2-820b-dfda85a50646" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_b8006966-ba6d-4d50-b6b4-86fd0f6105c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesIssued"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_SharesIssued_b8006966-ba6d-4d50-b6b4-86fd0f6105c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_62444ad0-977f-473a-a0ef-def34bfe50ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_d075ecce-ec22-4353-b497-db91c03e9918" xlink:to="loc_us-gaap_StockholdersEquity_62444ad0-977f-473a-a0ef-def34bfe50ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical" xlink:type="simple" xlink:href="rock-20221231.xsd#ConsolidatedStatementsofStockholdersEquityParenthetical"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_c5121745-5d50-4802-b60b-94e94d485a5a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1_4e2e6179-96f7-45b8-a69a-86b11bf610d2" xlink:href="rock-20221231.xsd#rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_c5121745-5d50-4802-b60b-94e94d485a5a" xlink:to="loc_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1_4e2e6179-96f7-45b8-a69a-86b11bf610d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPolicies"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_d852691e-9f1a-4990-a1ab-fdb735f2f067" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_e37ed8f1-9bb9-467d-b86e-4f1a2c4b9eb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d852691e-9f1a-4990-a1ab-fdb735f2f067" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_e37ed8f1-9bb9-467d-b86e-4f1a2c4b9eb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/RevenueNotes" xlink:type="simple" xlink:href="rock-20221231.xsd#RevenueNotes"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/RevenueNotes" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_ebf35c2f-4510-49de-af72-08283781f6c0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_876adaec-ff07-4896-a1f6-a10d30906f96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_ebf35c2f-4510-49de-af72-08283781f6c0" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_876adaec-ff07-4896-a1f6-a10d30906f96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccountsReceivable" xlink:type="simple" xlink:href="rock-20221231.xsd#AccountsReceivable"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccountsReceivable" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_e9266b8c-4e09-4a71-80fb-57d0b21afc11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_ac5d11f0-33a3-4065-9294-73e87118016c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_e9266b8c-4e09-4a71-80fb-57d0b21afc11" xlink:to="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_ac5d11f0-33a3-4065-9294-73e87118016c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/Inventories" xlink:type="simple" xlink:href="rock-20221231.xsd#Inventories"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_a4a32519-7602-4677-9e60-47f81ea8f7d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_46cd355f-6e13-426b-99f6-82213b0db72c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_a4a32519-7602-4677-9e60-47f81ea8f7d0" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_46cd355f-6e13-426b-99f6-82213b0db72c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PropertyPlantandEquipment" xlink:type="simple" xlink:href="rock-20221231.xsd#PropertyPlantandEquipment"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PropertyPlantandEquipment" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d1ea5200-a5b1-441e-a0f1-072ab42bd36f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_0c100b6e-b74e-414d-a472-1d9d91402c91" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d1ea5200-a5b1-441e-a0f1-072ab42bd36f" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_0c100b6e-b74e-414d-a472-1d9d91402c91" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/Acquisitions" xlink:type="simple" xlink:href="rock-20221231.xsd#Acquisitions"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/Acquisitions" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_7963c56c-7a9b-4f82-8c73-d518367734c0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_b5e7971a-4491-4181-8a11-b72b5ed4b2ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_7963c56c-7a9b-4f82-8c73-d518367734c0" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_b5e7971a-4491-4181-8a11-b72b5ed4b2ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssets" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssets"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_dfefbf95-1000-4dc3-8edc-b306c2cfc219" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_f3753e94-e75b-487e-9790-bf3303baa193" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_dfefbf95-1000-4dc3-8edc-b306c2cfc219" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_f3753e94-e75b-487e-9790-bf3303baa193" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccruedExpenses" xlink:type="simple" xlink:href="rock-20221231.xsd#AccruedExpenses"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccruedExpenses" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_08f94a73-44f5-4a99-9807-e1c7dd85126a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_49b402bc-bd4e-4721-b9f1-a02e7f798568" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_08f94a73-44f5-4a99-9807-e1c7dd85126a" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_49b402bc-bd4e-4721-b9f1-a02e7f798568" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/Debt" xlink:type="simple" xlink:href="rock-20221231.xsd#Debt"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/Debt" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAbstract_f290c1e4-110b-491d-98a3-d0eeaa32b474" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtTextBlock_7becf456-e09e-40bc-8546-af56730b391a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_f290c1e4-110b-491d-98a3-d0eeaa32b474" xlink:to="loc_us-gaap_LongTermDebtTextBlock_7becf456-e09e-40bc-8546-af56730b391a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefits" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefits"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefits" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract_f5ca7e84-36e4-4492-b24b-9dac34a5feb4" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock_09479825-60b2-491d-b242-04e5621dadef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract_f5ca7e84-36e4-4492-b24b-9dac34a5feb4" xlink:to="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock_09479825-60b2-491d-b242-04e5621dadef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLoss" xlink:type="simple" xlink:href="rock-20221231.xsd#AccumulatedOtherComprehensiveIncomeLoss"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLoss" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_9503404a-7fdd-4085-abf5-a92444a0af51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_5e9b8dc5-445b-42d8-8e09-d825e8131549" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_9503404a-7fdd-4085-abf5-a92444a0af51" xlink:to="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_5e9b8dc5-445b-42d8-8e09-d825e8131549" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensation" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensation"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_01b4f1cc-2dab-4e09-b0dc-63e2ddfc863a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_ae2be81a-a214-4714-b4e4-bcbbbaca1985" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_01b4f1cc-2dab-4e09-b0dc-63e2ddfc863a" xlink:to="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_ae2be81a-a214-4714-b4e4-bcbbbaca1985" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="rock-20221231.xsd#FairValueMeasurements"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_228f7ff3-aefa-4d30-8e66-4f10bae5081e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_ac36f254-962f-4948-a705-8c43ada71368" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_228f7ff3-aefa-4d30-8e66-4f10bae5081e" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_ac36f254-962f-4948-a705-8c43ada71368" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperations" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperations"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_648fee68-bab8-4059-b525-522403cec854" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_be7524af-0027-487b-8fa7-84f66436fa8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_648fee68-bab8-4059-b525-522403cec854" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_be7524af-0027-487b-8fa7-84f66436fa8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairments" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairments"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_3f005498-6717-4ee2-82c9-75390b1cfcf6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_741455b5-25ab-4c4d-a3a4-38e18e85dcd6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_3f005498-6717-4ee2-82c9-75390b1cfcf6" xlink:to="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_741455b5-25ab-4c4d-a3a4-38e18e85dcd6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxes" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxes"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxes" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_e7f388d9-1d57-4272-b6f6-06c11514ec0c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_6a9eeca6-8bab-4a32-b234-27e97c888324" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_e7f388d9-1d57-4272-b6f6-06c11514ec0c" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_6a9eeca6-8bab-4a32-b234-27e97c888324" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EarningsperShare" xlink:type="simple" xlink:href="rock-20221231.xsd#EarningsperShare"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EarningsperShare" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_7176a586-55ac-4108-a781-6cf7bd641a84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_ab32aa0a-fe34-4737-802b-8d4a504f3084" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_7176a586-55ac-4108-a781-6cf7bd641a84" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_ab32aa0a-fe34-4737-802b-8d4a504f3084" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/Leases" xlink:type="simple" xlink:href="rock-20221231.xsd#Leases"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/Leases" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_750b76b4-033d-4244-a824-64a6be4b74f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_2e24f48e-3dc4-4505-88a8-8fd3ed589a21" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_750b76b4-033d-4244-a824-64a6be4b74f6" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_2e24f48e-3dc4-4505-88a8-8fd3ed589a21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="rock-20221231.xsd#CommitmentsandContingencies"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/CommitmentsandContingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_c7ce2e54-2e6c-4078-b0e8-172e3f7359c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_7b7ce552-7a11-4d0d-9583-395396d848ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_c7ce2e54-2e6c-4078-b0e8-172e3f7359c2" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_7b7ce552-7a11-4d0d-9583-395396d848ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformation" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformation"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SegmentInformation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationRevenueAbstract_7a3b6262-5ca7-4080-8c47-59f2ca006300" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationRevenueAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_54f99baa-ef50-4017-a27b-c1ff3cf479b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract_7a3b6262-5ca7-4080-8c47-59f2ca006300" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_54f99baa-ef50-4017-a27b-c1ff3cf479b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPoliciesPolicies"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock_ccb79a86-784f-48ce-b18d-b181c79f3b7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_ConsolidationPolicyTextBlock_ccb79a86-784f-48ce-b18d-b181c79f3b7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates_298ea7b1-492a-4b87-8a81-b2f76359b583" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_UseOfEstimates_298ea7b1-492a-4b87-8a81-b2f76359b583" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingPolicyPolicyTextBlock_c8ddab8c-61d4-4a23-b448-0dfed1a36d78" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingPolicyPolicyTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_SegmentReportingPolicyPolicyTextBlock_c8ddab8c-61d4-4a23-b448-0dfed1a36d78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_b377095f-2ae3-4172-83d7-18f52641b8d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_b377095f-2ae3-4172-83d7-18f52641b8d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_5b85b8fa-e38b-4519-9ef5-5744f6891623" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_5b85b8fa-e38b-4519-9ef5-5744f6891623" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeAndOtherAccountsReceivablePolicy_749b9bbb-db7e-447a-94ec-abf34d4b3d29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_TradeAndOtherAccountsReceivablePolicy_749b9bbb-db7e-447a-94ec-abf34d4b3d29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryPolicyTextBlock_3fccd44e-288a-4d2a-b67c-3f8e5a069002" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_InventoryPolicyTextBlock_3fccd44e-288a-4d2a-b67c-3f8e5a069002" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_e2d8eec5-72c7-4cb8-95be-8543dbc3677d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_e2d8eec5-72c7-4cb8-95be-8543dbc3677d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_677fd5ca-5fdc-40cf-a2f9-1f364db9e420" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_BusinessCombinationsPolicy_677fd5ca-5fdc-40cf-a2f9-1f364db9e420" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_df3d0a3b-ea2d-4406-b844-93247e576f13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_df3d0a3b-ea2d-4406-b844-93247e576f13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_daae5046-c20a-4b7c-8cda-a59ac955f25b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_daae5046-c20a-4b7c-8cda-a59ac955f25b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock_72dd9b05-cea6-4e36-85ea-2b8c45b7f099" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_LesseeLeasesPolicyTextBlock_72dd9b05-cea6-4e36-85ea-2b8c45b7f099" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredChargesPolicyTextBlock_55f414b9-289e-4009-b0e4-c617e75cb1b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredChargesPolicyTextBlock"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_DeferredChargesPolicyTextBlock_55f414b9-289e-4009-b0e4-c617e75cb1b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock_b594d67a-cb02-41e0-bb36-213840da5fd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingCostsPolicyTextBlock"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_AdvertisingCostsPolicyTextBlock_b594d67a-cb02-41e0-bb36-213840da5fd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_9a1ec8cc-56fb-4327-aea9-5b7299acebf2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_9a1ec8cc-56fb-4327-aea9-5b7299acebf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_f1464bad-b3d6-41e5-86d5-57012ba10466" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_IncomeTaxPolicyTextBlock_f1464bad-b3d6-41e5-86d5-57012ba10466" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_06ad4e35-ada5-4be4-8646-2fde26d8353b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_06ad4e35-ada5-4be4-8646-2fde26d8353b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_223393ae-7dd2-4b5f-bcc3-59805d9b6940" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_56085208-50da-4616-8495-1dbd9beddebd" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_223393ae-7dd2-4b5f-bcc3-59805d9b6940" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPoliciesTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_9dd57f16-5c7e-413e-87e7-9a671e6b66d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock_e3210424-9e73-49f0-8015-728e47d7de47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_9dd57f16-5c7e-413e-87e7-9a671e6b66d9" xlink:to="loc_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock_e3210424-9e73-49f0-8015-728e47d7de47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1dddc8e8-c111-4fbf-b4c9-dd1eff7b04f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_9dd57f16-5c7e-413e-87e7-9a671e6b66d9" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1dddc8e8-c111-4fbf-b4c9-dd1eff7b04f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/RevenueTables" xlink:type="simple" xlink:href="rock-20221231.xsd#RevenueTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/RevenueTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_2c8fd63c-af76-4fc8-b13e-c08f73629521" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_4295d7c2-d26c-4459-a251-e9bd7bb7d2f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_2c8fd63c-af76-4fc8-b13e-c08f73629521" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_4295d7c2-d26c-4459-a251-e9bd7bb7d2f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccountsReceivableTables" xlink:type="simple" xlink:href="rock-20221231.xsd#AccountsReceivableTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccountsReceivableTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_2f216f51-9d0a-44e8-8999-277cd1e2c4c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_394bcdfa-b064-48c5-ab3d-91697aef2114" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_2f216f51-9d0a-44e8-8999-277cd1e2c4c6" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_394bcdfa-b064-48c5-ab3d-91697aef2114" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/InventoriesTables" xlink:type="simple" xlink:href="rock-20221231.xsd#InventoriesTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_4f4b7d93-ed53-42e8-b9b3-8825c37f9b0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_f1ce2bf3-87c3-4a55-a668-d9a406773f7a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_4f4b7d93-ed53-42e8-b9b3-8825c37f9b0b" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_f1ce2bf3-87c3-4a55-a668-d9a406773f7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock_2488023f-e653-402f-9485-441243268f76" xlink:href="rock-20221231.xsd#rock_SummaryOfSlowMovingInventoryActivityTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_4f4b7d93-ed53-42e8-b9b3-8825c37f9b0b" xlink:to="loc_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock_2488023f-e653-402f-9485-441243268f76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PropertyPlantandEquipmentTables" xlink:type="simple" xlink:href="rock-20221231.xsd#PropertyPlantandEquipmentTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PropertyPlantandEquipmentTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_7b750d94-aad5-4fe7-bc3c-c97820c4b196" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_e5c80ba7-51ad-4f33-872b-039e08fd1301" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_7b750d94-aad5-4fe7-bc3c-c97820c4b196" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_e5c80ba7-51ad-4f33-872b-039e08fd1301" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsTables" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_eeebd067-7902-41ef-9287-b05921451c75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_f0c78b7c-27ac-428a-98b1-278e468f393d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_eeebd067-7902-41ef-9287-b05921451c75" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_f0c78b7c-27ac-428a-98b1-278e468f393d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_1f1ab035-29b1-46be-9368-d81962c98b0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_eeebd067-7902-41ef-9287-b05921451c75" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_1f1ab035-29b1-46be-9368-d81962c98b0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleofBusinessCombinationCostsTableTextBlock_39027d5f-4b4c-4bc4-8f03-b767e0f1b1b6" xlink:href="rock-20221231.xsd#rock_ScheduleofBusinessCombinationCostsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_eeebd067-7902-41ef-9287-b05921451c75" xlink:to="loc_rock_ScheduleofBusinessCombinationCostsTableTextBlock_39027d5f-4b4c-4bc4-8f03-b767e0f1b1b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_cdbc7999-c958-40eb-a674-157496d19eeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_fd378c40-8df2-4455-85e7-c7fc02affd10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_cdbc7999-c958-40eb-a674-157496d19eeb" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_fd378c40-8df2-4455-85e7-c7fc02affd10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_cfeff35b-37ed-43d1-be3b-ab4c21c0c6e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_cdbc7999-c958-40eb-a674-157496d19eeb" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_cfeff35b-37ed-43d1-be3b-ab4c21c0c6e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_bf08a5b9-ee59-46af-8e87-14569716d1ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_cdbc7999-c958-40eb-a674-157496d19eeb" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_bf08a5b9-ee59-46af-8e87-14569716d1ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_dcf62991-30d2-4b19-86bf-4f507e3f648d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_cdbc7999-c958-40eb-a674-157496d19eeb" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_dcf62991-30d2-4b19-86bf-4f507e3f648d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccruedExpensesTables" xlink:type="simple" xlink:href="rock-20221231.xsd#AccruedExpensesTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccruedExpensesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_8f205b2c-5cc6-471f-8771-d04267e6a00b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_93ba9a75-3d69-466d-8ea3-60c81dfe2051" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_8f205b2c-5cc6-471f-8771-d04267e6a00b" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_93ba9a75-3d69-466d-8ea3-60c81dfe2051" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DebtTables" xlink:type="simple" xlink:href="rock-20221231.xsd#DebtTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DebtTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAbstract_17b54431-390e-41e7-8bc1-535a7ae0dac8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock_c11493b2-13d5-45c6-a2bf-95112828faf1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_17b54431-390e-41e7-8bc1-535a7ae0dac8" xlink:to="loc_us-gaap_ScheduleOfDebtTableTextBlock_c11493b2-13d5-45c6-a2bf-95112828faf1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleOfInterestCashPaymentTableTextBlock_5b9175eb-4535-422a-8dd7-d0b5b9cfb2f7" xlink:href="rock-20221231.xsd#rock_ScheduleOfInterestCashPaymentTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_17b54431-390e-41e7-8bc1-535a7ae0dac8" xlink:to="loc_rock_ScheduleOfInterestCashPaymentTableTextBlock_5b9175eb-4535-422a-8dd7-d0b5b9cfb2f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract_15ded0a7-5f85-4966-8a63-e9d3c30c9f65" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_122a8826-8176-4688-bd99-b874b11d60f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract_15ded0a7-5f85-4966-8a63-e9d3c30c9f65" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_122a8826-8176-4688-bd99-b874b11d60f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_583c2958-27d3-4f3c-a676-cdd14e4e8112" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_122a8826-8176-4688-bd99-b874b11d60f5" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_583c2958-27d3-4f3c-a676-cdd14e4e8112" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_9ca3b1ad-b216-424f-b9be-1efe51e240f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_583c2958-27d3-4f3c-a676-cdd14e4e8112" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_9ca3b1ad-b216-424f-b9be-1efe51e240f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_42b436a2-628e-44a5-be96-8e28f8b2da45" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_9ca3b1ad-b216-424f-b9be-1efe51e240f2" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_42b436a2-628e-44a5-be96-8e28f8b2da45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_122a8826-8176-4688-bd99-b874b11d60f5" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock_55b75715-a357-49b4-ad1c-8c85aef49d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock_55b75715-a357-49b4-ad1c-8c85aef49d27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetFundedStatusTableTextBlock_e179492d-64f5-43af-8cca-666cf8419bdd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNetFundedStatusTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfNetFundedStatusTableTextBlock_e179492d-64f5-43af-8cca-666cf8419bdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock_f404c41c-7e80-4d00-906f-aa6a92afe70e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock_f404c41c-7e80-4d00-906f-aa6a92afe70e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_aaa650e4-c57e-48d9-9a5d-43d388ffdf32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNetBenefitCostsTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_aaa650e4-c57e-48d9-9a5d-43d388ffdf32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_bb28b386-7b8c-4314-8cdf-be679df3c506" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_135898eb-775c-46e7-b3a8-c61472f3face" xlink:to="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_bb28b386-7b8c-4314-8cdf-be679df3c506" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossTables" xlink:type="simple" xlink:href="rock-20221231.xsd#AccumulatedOtherComprehensiveIncomeLossTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_8f87196d-3dfc-4b0f-89f1-8a07a1b7798d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_952cf3fa-a53f-4f9c-afe0-fe47d7ac5938" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_8f87196d-3dfc-4b0f-89f1-8a07a1b7798d" xlink:to="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_952cf3fa-a53f-4f9c-afe0-fe47d7ac5938" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationTables" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_61c179d7-7d73-4fce-8439-fb7ff88851e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:to="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_61c179d7-7d73-4fce-8439-fb7ff88851e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_aa968b24-e214-4d94-ba42-b6ef2c14cea2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_aa968b24-e214-4d94-ba42-b6ef2c14cea2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock_c9890775-f22c-4f74-aa44-82063e209dfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock_c9890775-f22c-4f74-aa44-82063e209dfa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_4e4c065a-2807-41da-84fd-0571e5f37da5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_4e4c065a-2807-41da-84fd-0571e5f37da5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_2c0386bd-3bbb-43d1-8cd6-ef12ae2183fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:to="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_2c0386bd-3bbb-43d1-8cd6-ef12ae2183fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock_5d3e9f88-c39f-42ba-a76a-ef71d9d02fb9" xlink:href="rock-20221231.xsd#rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:to="loc_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock_5d3e9f88-c39f-42ba-a76a-ef71d9d02fb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CashPaidToSettleLiabilityAwardsTableTextBlock_f3344c0f-1dd8-46f4-ac46-535e2de82697" xlink:href="rock-20221231.xsd#rock_CashPaidToSettleLiabilityAwardsTableTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_d7364d97-d1d8-457f-acc2-cd66c80b0d29" xlink:to="loc_rock_CashPaidToSettleLiabilityAwardsTableTextBlock_f3344c0f-1dd8-46f4-ac46-535e2de82697" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsTables" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_3522ca79-4907-48ea-bfb0-72a892e9d577" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_605b925f-645c-40e4-9ce5-0650ae4d2f31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_3522ca79-4907-48ea-bfb0-72a892e9d577" xlink:to="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_605b925f-645c-40e4-9ce5-0650ae4d2f31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_ced47e2f-52a9-4230-bd06-30d7897bed3b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_c01108ca-8f2c-47a6-9345-e36bd0036cd8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_ced47e2f-52a9-4230-bd06-30d7897bed3b" xlink:to="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_c01108ca-8f2c-47a6-9345-e36bd0036cd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock_11f39a8e-1f76-4115-b297-87730685dafc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_ced47e2f-52a9-4230-bd06-30d7897bed3b" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock_11f39a8e-1f76-4115-b297-87730685dafc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesTables" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_aa7384dd-12f8-466a-88d8-231576e4305b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:to="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_aa7384dd-12f8-466a-88d8-231576e4305b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_732c8d4d-5dc7-4c17-82ce-3a0a92042b29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:to="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_732c8d4d-5dc7-4c17-82ce-3a0a92042b29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock_eaa6c1fb-a4d8-4259-900f-721ba6bb9fc0" xlink:href="rock-20221231.xsd#rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:to="loc_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock_eaa6c1fb-a4d8-4259-900f-721ba6bb9fc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_2b98acaa-9eac-4394-8968-6a57bc224345" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_2b98acaa-9eac-4394-8968-6a57bc224345" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_3da76c5c-7531-4fbf-b2da-ef9bd76c8fdd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:to="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_3da76c5c-7531-4fbf-b2da-ef9bd76c8fdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SummaryOfValuationAllowanceTextBlock_432ac221-7bf7-4748-8cef-4133d84d377d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SummaryOfValuationAllowanceTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:to="loc_us-gaap_SummaryOfValuationAllowanceTextBlock_432ac221-7bf7-4748-8cef-4133d84d377d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock_3c43a089-9be9-48bb-a675-46dcd56ee12d" xlink:href="rock-20221231.xsd#rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5e116587-aab4-474f-a935-42361ba14e8d" xlink:to="loc_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock_3c43a089-9be9-48bb-a675-46dcd56ee12d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EarningsperShareTables" xlink:type="simple" xlink:href="rock-20221231.xsd#EarningsperShareTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EarningsperShareTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_77e6f08f-1e8e-44d9-aa9b-b6542cc3f390" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_36c95873-8b8a-4813-904e-ac021cf36126" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_77e6f08f-1e8e-44d9-aa9b-b6542cc3f390" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_36c95873-8b8a-4813-904e-ac021cf36126" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_4dd27f78-7d70-4aa3-8b06-ab87d2ada77f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_77e6f08f-1e8e-44d9-aa9b-b6542cc3f390" xlink:to="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_4dd27f78-7d70-4aa3-8b06-ab87d2ada77f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesTables" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_4bb1d2ff-2b4d-4791-bfd8-42792f0633c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AssetsAndLiabilitiesLesseeTableTextBlock_a26465ec-6186-4423-8855-33a076ee8d45" xlink:href="rock-20221231.xsd#rock_AssetsAndLiabilitiesLesseeTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4bb1d2ff-2b4d-4791-bfd8-42792f0633c6" xlink:to="loc_rock_AssetsAndLiabilitiesLesseeTableTextBlock_a26465ec-6186-4423-8855-33a076ee8d45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_3d2fbc08-09b0-437a-a555-955755410483" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4bb1d2ff-2b4d-4791-bfd8-42792f0633c6" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_3d2fbc08-09b0-437a-a555-955755410483" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_aa1ccec0-4d44-48c7-a62e-c35380897145" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4bb1d2ff-2b4d-4791-bfd8-42792f0633c6" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_aa1ccec0-4d44-48c7-a62e-c35380897145" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationTables" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationTables"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationRevenueAbstract_e507c7d9-dd84-483c-a810-af8638ffeca5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationRevenueAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock_37e9c8ef-f9a7-4678-84cb-c6dae32f9b8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract_e507c7d9-dd84-483c-a810-af8638ffeca5" xlink:to="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock_37e9c8ef-f9a7-4678-84cb-c6dae32f9b8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_70030e39-2e38-4ecc-a0a9-6a51ef836b5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract_e507c7d9-dd84-483c-a810-af8638ffeca5" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_70030e39-2e38-4ecc-a0a9-6a51ef836b5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_532b77de-8534-4eaf-be29-5df6842b0a04" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract_e507c7d9-dd84-483c-a810-af8638ffeca5" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_532b77de-8534-4eaf-be29-5df6842b0a04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_a0dae6aa-6c65-42d0-befd-0c5c3ceb7455" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_de9811e7-e77f-424a-b76c-9cbc96ec455d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_a0dae6aa-6c65-42d0-befd-0c5c3ceb7455" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_de9811e7-e77f-424a-b76c-9cbc96ec455d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_686325d1-9e48-42dc-8bfc-2f1fd23bc593" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_a0dae6aa-6c65-42d0-befd-0c5c3ceb7455" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_686325d1-9e48-42dc-8bfc-2f1fd23bc593" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_4fc8374d-83a6-40bf-b49a-dafe2b348f4e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_686325d1-9e48-42dc-8bfc-2f1fd23bc593" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_4fc8374d-83a6-40bf-b49a-dafe2b348f4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_d285c181-c2b6-4bfb-966b-b1a8ac40f2ab" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_4fc8374d-83a6-40bf-b49a-dafe2b348f4e" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_d285c181-c2b6-4bfb-966b-b1a8ac40f2ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_ce9d1553-1bc0-46de-acd1-50d0474f0889" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_d285c181-c2b6-4bfb-966b-b1a8ac40f2ab" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_ce9d1553-1bc0-46de-acd1-50d0474f0889" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_686325d1-9e48-42dc-8bfc-2f1fd23bc593" xlink:to="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_9de081e1-ed73-4151-92fb-5c1d5722c036" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_9de081e1-ed73-4151-92fb-5c1d5722c036" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_c605c309-f614-49aa-bbfe-b34d00d21042" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_c605c309-f614-49aa-bbfe-b34d00d21042" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_fc23aecd-99e3-4e29-b12d-4561d5db1352" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_fc23aecd-99e3-4e29-b12d-4561d5db1352" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_e9bcd214-ba4e-4fa2-ad68-7ef810b58f98" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_2db0a80b-2bdd-441f-984b-24935e54dbea" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_e9bcd214-ba4e-4fa2-ad68-7ef810b58f98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPoliciesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_a731bce7-03dd-4789-a1f6-0e76572090eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleLeasebackTransactionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_a731bce7-03dd-4789-a1f6-0e76572090eb" xlink:to="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_a7b97257-1b30-4e81-ad25-1ec2e5752ee1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_a7b97257-1b30-4e81-ad25-1ec2e5752ee1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_3a165eec-01f3-45bf-aa1a-e2589357174b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_a7b97257-1b30-4e81-ad25-1ec2e5752ee1" xlink:to="loc_us-gaap_EquityComponentDomain_3a165eec-01f3-45bf-aa1a-e2589357174b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_1cb1afca-d88f-4d0f-9955-1e6d1b3e82fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_3a165eec-01f3-45bf-aa1a-e2589357174b" xlink:to="loc_us-gaap_RetainedEarningsMember_1cb1afca-d88f-4d0f-9955-1e6d1b3e82fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_6baec338-c48f-4d7c-9192-0f8e45fd8687" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_6baec338-c48f-4d7c-9192-0f8e45fd8687" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_6baec338-c48f-4d7c-9192-0f8e45fd8687" xlink:to="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_525d5dbc-bb81-4308-b21d-fc7ea97e4ef3" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:to="loc_rock_ResidentialMember_525d5dbc-bb81-4308-b21d-fc7ea97e4ef3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesAndAgtechMember_f324524d-4813-45b7-951d-bf95f738c6dc" xlink:href="rock-20221231.xsd#rock_RenewablesAndAgtechMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_a3284073-ff6f-4679-9e8c-dec557935110" xlink:to="loc_rock_RenewablesAndAgtechMember_f324524d-4813-45b7-951d-bf95f738c6dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_694e519b-0052-44b6-9a56-02a0412066a7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_srt_MajorCustomersAxis_694e519b-0052-44b6-9a56-02a0412066a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_c10721b3-b908-40a7-aa70-c01f6fca5c47" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_694e519b-0052-44b6-9a56-02a0412066a7" xlink:to="loc_srt_NameOfMajorCustomerDomain_c10721b3-b908-40a7-aa70-c01f6fca5c47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_HomeImprovementRetailCompanyMember_a845dce1-79b4-4755-b7f1-1866f8cb05f8" xlink:href="rock-20221231.xsd#rock_HomeImprovementRetailCompanyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_c10721b3-b908-40a7-aa70-c01f6fca5c47" xlink:to="loc_rock_HomeImprovementRetailCompanyMember_a845dce1-79b4-4755-b7f1-1866f8cb05f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_92d44d77-f18e-45ed-9063-7426444b6995" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_92d44d77-f18e-45ed-9063-7426444b6995" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_92d44d77-f18e-45ed-9063-7426444b6995" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_9dd2d0d7-49e3-4167-ab7f-1fecb64c6dcd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:to="loc_us-gaap_AccountsReceivableMember_9dd2d0d7-49e3-4167-ab7f-1fecb64c6dcd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_c3298015-ff73-4892-bd68-31d57c96047f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_9c498e3f-b15a-4761-8044-59d9ed53d960" xlink:to="loc_us-gaap_SalesRevenueNetMember_c3298015-ff73-4892-bd68-31d57c96047f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_3290ebea-aff1-492d-bf88-df66ab221271" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_srt_RangeAxis_3290ebea-aff1-492d-bf88-df66ab221271" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_3290ebea-aff1-492d-bf88-df66ab221271" xlink:to="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_0e7fa7d8-2885-4e6a-a137-8a36af221234" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:to="loc_srt_MinimumMember_0e7fa7d8-2885-4e6a-a137-8a36af221234" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_ced9b16f-b695-40b1-89a5-60cacc09ab16" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_c82590be-967e-437d-94f2-b5c4591e92db" xlink:to="loc_srt_MaximumMember_ced9b16f-b695-40b1-89a5-60cacc09ab16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_81f64f7a-7c23-4a47-9f2a-bf2822ec9cd8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandBuildingsAndImprovementsMember_cb44f204-6f01-4949-85b7-db0dc269e4ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandBuildingsAndImprovementsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:to="loc_us-gaap_LandBuildingsAndImprovementsMember_cb44f204-6f01-4949-85b7-db0dc269e4ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_0cdd7b85-9249-4e23-9b53-3368d7b3444a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_added1c1-5838-4b72-afea-beec3f251d41" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_0cdd7b85-9249-4e23-9b53-3368d7b3444a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_486184b4-be59-4544-af3b-adbfd346eba6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_486184b4-be59-4544-af3b-adbfd346eba6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_f7c2aab8-06ca-44d3-8e81-39679a8f88cf" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_486184b4-be59-4544-af3b-adbfd346eba6" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_f7c2aab8-06ca-44d3-8e81-39679a8f88cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_175d6252-49c4-4cbf-94e4-65e3acdbcf26" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_f7c2aab8-06ca-44d3-8e81-39679a8f88cf" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_175d6252-49c4-4cbf-94e4-65e3acdbcf26" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_89a40f6f-afed-4cf4-b298-2a936facc12e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_89a40f6f-afed-4cf4-b298-2a936facc12e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_8530e94a-2e87-4f72-bd29-dd0be7a99ecd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_89a40f6f-afed-4cf4-b298-2a936facc12e" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_8530e94a-2e87-4f72-bd29-dd0be7a99ecd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_7ca756cf-6020-4183-a03a-7d15da6b0e13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_8530e94a-2e87-4f72-bd29-dd0be7a99ecd" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_7ca756cf-6020-4183-a03a-7d15da6b0e13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleLeasebackTransactionLineItems"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionTable_700eb011-4218-4827-9822-67ae303e5de4" xlink:to="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_75310e39-27da-4f81-bb55-9e6258586fad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_NumberOfReportableSegments_75310e39-27da-4f81-bb55-9e6258586fad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_bf4b6e2e-e59d-4e2a-94ac-e46a3ccbb98d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_bf4b6e2e-e59d-4e2a-94ac-e46a3ccbb98d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_0d839ad6-550e-4219-9506-f3eb42d660d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_0d839ad6-550e-4219-9506-f3eb42d660d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense_8eacc2e7-c94e-4675-808b-9939a1ff0540" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleLeasebackTransactionLineItems_dd1a869e-9d9b-4fcb-adf3-25bb52831a60" xlink:to="loc_us-gaap_AdvertisingExpense_8eacc2e7-c94e-4675-808b-9939a1ff0540" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_e7558bc1-b0ee-4caa-b5b8-d5f079280596" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_46ac021b-be9f-4798-8c52-f53daeaeaff6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_e7558bc1-b0ee-4caa-b5b8-d5f079280596" xlink:to="loc_us-gaap_Depreciation_46ac021b-be9f-4798-8c52-f53daeaeaff6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/RevenueNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#RevenueNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/RevenueNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_dfd9d444-2fd7-435e-ab83-1c30c6d46c6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_dfd9d444-2fd7-435e-ab83-1c30c6d46c6d" xlink:to="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_524bd13f-2de3-4267-a20a-9345b93023fd" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:to="loc_srt_RangeAxis_524bd13f-2de3-4267-a20a-9345b93023fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_524bd13f-2de3-4267-a20a-9345b93023fd" xlink:to="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_936d7e47-94ce-4b78-8250-d5aaed598bde" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:to="loc_srt_MinimumMember_936d7e47-94ce-4b78-8250-d5aaed598bde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_a68a31e9-ece6-430b-931b-f06dc9f2403e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_b005739c-b4f3-43b4-b41a-357618c845c5" xlink:to="loc_srt_MaximumMember_a68a31e9-ece6-430b-931b-f06dc9f2403e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_eef6d7c6-62e0-405b-bfd1-0b5383290095" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_eef6d7c6-62e0-405b-bfd1-0b5383290095" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_b3797fb5-5353-45e3-82bd-2dc68e0a7519" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_eef6d7c6-62e0-405b-bfd1-0b5383290095" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_b3797fb5-5353-45e3-82bd-2dc68e0a7519" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BillingsinExcessofCostMember_d89161ac-c5d7-4c4b-b5dd-15f761ffdc80" xlink:href="rock-20221231.xsd#rock_BillingsinExcessofCostMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_b3797fb5-5353-45e3-82bd-2dc68e0a7519" xlink:to="loc_rock_BillingsinExcessofCostMember_d89161ac-c5d7-4c4b-b5dd-15f761ffdc80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_947f4733-a30c-4f62-be81-91c7f369ac44" xlink:to="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractWithCustomerContractPaymentTerms_a6c01172-951a-4fd2-9b2d-5be1af39494f" xlink:href="rock-20221231.xsd#rock_ContractWithCustomerContractPaymentTerms"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_rock_ContractWithCustomerContractPaymentTerms_a6c01172-951a-4fd2-9b2d-5be1af39494f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_48def3be-3daf-4e51-956f-36820e04ed37" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_48def3be-3daf-4e51-956f-36820e04ed37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract_76026c95-c890-468e-9079-659b8bc8ccd7" xlink:href="rock-20221231.xsd#rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract_76026c95-c890-468e-9079-659b8bc8ccd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_46efec08-94c5-47b6-ab97-e279160e3967" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_46efec08-94c5-47b6-ab97-e279160e3967" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_9fd1414e-87e9-4e0d-b5bf-c86003361285" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_ContractWithCustomerLiability_9fd1414e-87e9-4e0d-b5bf-c86003361285" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable_6c158be8-04ef-4115-920d-c62769a01fa1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetReclassifiedToReceivable"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e95b515e-d4b9-46a7-9b86-23c77fe83d6b" xlink:to="loc_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable_6c158be8-04ef-4115-920d-c62769a01fa1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#RevenueContractAssetsandLiabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_4a8bc3e8-a549-48cc-9054-b0a2345885c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable_14103778-bd11-4f9e-b6c0-0535064a848f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_4a8bc3e8-a549-48cc-9054-b0a2345885c2" xlink:to="loc_us-gaap_CapitalizedContractCostTable_14103778-bd11-4f9e-b6c0-0535064a848f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_759a63bf-1173-4543-a4ab-2ca3498c336b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_14103778-bd11-4f9e-b6c0-0535064a848f" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_759a63bf-1173-4543-a4ab-2ca3498c336b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_224838c1-1c17-4f36-a5f8-ab6bed914bb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_759a63bf-1173-4543-a4ab-2ca3498c336b" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_224838c1-1c17-4f36-a5f8-ab6bed914bb3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BillingsinExcessofCostMember_7d9549c1-ee58-4cb6-b22c-9f7d49ed1291" xlink:href="rock-20221231.xsd#rock_BillingsinExcessofCostMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_224838c1-1c17-4f36-a5f8-ab6bed914bb3" xlink:to="loc_rock_BillingsinExcessofCostMember_7d9549c1-ee58-4cb6-b22c-9f7d49ed1291" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_14103778-bd11-4f9e-b6c0-0535064a848f" xlink:to="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_14d819aa-1895-471b-ad9c-809fb47ec24f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_14d819aa-1895-471b-ad9c-809fb47ec24f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_00c65245-2c51-42b3-b464-5c9cef4634cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_5e750c36-17a3-4a2c-8e37-0d882c7debbf" xlink:to="loc_us-gaap_ContractWithCustomerLiability_00c65245-2c51-42b3-b464-5c9cef4634cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccountsReceivableDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AccountsReceivableDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccountsReceivableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_9cc78f4c-d5aa-4fd3-8b53-01a211bb1047" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableGrossCurrent_cc5945d0-d54d-4bb5-b511-8dfcec448f48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableGrossCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_9cc78f4c-d5aa-4fd3-8b53-01a211bb1047" xlink:to="loc_us-gaap_AccountsReceivableGrossCurrent_cc5945d0-d54d-4bb5-b511-8dfcec448f48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledContractsReceivable_f2eada67-6ed6-4e05-b4c8-c327b5a5d534" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnbilledContractsReceivable"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_9cc78f4c-d5aa-4fd3-8b53-01a211bb1047" xlink:to="loc_us-gaap_UnbilledContractsReceivable_f2eada67-6ed6-4e05-b4c8-c327b5a5d534" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ContractsReceivableGrossCurrent_69ac7245-4acf-4a4a-bd1d-4a2afec787a7" xlink:href="rock-20221231.xsd#rock_ContractsReceivableGrossCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_9cc78f4c-d5aa-4fd3-8b53-01a211bb1047" xlink:to="loc_rock_ContractsReceivableGrossCurrent_69ac7245-4acf-4a4a-bd1d-4a2afec787a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_7095293b-5018-462b-82c8-a1407599143a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_9cc78f4c-d5aa-4fd3-8b53-01a211bb1047" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_7095293b-5018-462b-82c8-a1407599143a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_2425e0eb-5abb-42d3-bf17-3a4b94dd494c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_9cc78f4c-d5aa-4fd3-8b53-01a211bb1047" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_2425e0eb-5abb-42d3-bf17-3a4b94dd494c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#InventoriesScheduleofInventoriesDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_b17c9470-e181-4397-b8bf-2cae221a5f05" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials_dff05692-8b66-48ba-8ad1-20e852de46c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_b17c9470-e181-4397-b8bf-2cae221a5f05" xlink:to="loc_us-gaap_InventoryRawMaterials_dff05692-8b66-48ba-8ad1-20e852de46c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcess_79f1079d-1dab-43e5-914a-038500b93c94" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcess"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_b17c9470-e181-4397-b8bf-2cae221a5f05" xlink:to="loc_us-gaap_InventoryWorkInProcess_79f1079d-1dab-43e5-914a-038500b93c94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_1650d904-c8fe-45f3-8ea8-85289937ae31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_b17c9470-e181-4397-b8bf-2cae221a5f05" xlink:to="loc_us-gaap_InventoryFinishedGoods_1650d904-c8fe-45f3-8ea8-85289937ae31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryGross_9d8d891a-44c0-4e64-935f-1f9460aa9b7d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_b17c9470-e181-4397-b8bf-2cae221a5f05" xlink:to="loc_us-gaap_InventoryGross_9d8d891a-44c0-4e64-935f-1f9460aa9b7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryAdjustments_fd13baf5-e053-4a9f-8d88-b6f92e244b79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryAdjustments"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_b17c9470-e181-4397-b8bf-2cae221a5f05" xlink:to="loc_us-gaap_InventoryAdjustments_fd13baf5-e053-4a9f-8d88-b6f92e244b79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_1bc08af4-cd26-4ec1-9c4d-fa48ad3781ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_b17c9470-e181-4397-b8bf-2cae221a5f05" xlink:to="loc_us-gaap_InventoryNet_1bc08af4-cd26-4ec1-9c4d-fa48ad3781ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_8310bfef-d43c-4823-baa6-96e805e24268" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InventoryRollForward_1dff807c-315a-4389-809c-33c73d363edf" xlink:href="rock-20221231.xsd#rock_InventoryRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_8310bfef-d43c-4823-baa6-96e805e24268" xlink:to="loc_rock_InventoryRollForward_1dff807c-315a-4389-809c-33c73d363edf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves_85458082-f26a-4306-9bec-6f28c53d7b49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_InventoryRollForward_1dff807c-315a-4389-809c-33c73d363edf" xlink:to="loc_us-gaap_InventoryValuationReserves_85458082-f26a-4306-9bec-6f28c53d7b49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory_69d2ba0d-40b4-4273-9bab-64a2a9bbc447" xlink:href="rock-20221231.xsd#rock_InventoryValuationExcessObsoleteAndSlowMovingInventory"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_InventoryRollForward_1dff807c-315a-4389-809c-33c73d363edf" xlink:to="loc_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory_69d2ba0d-40b4-4273-9bab-64a2a9bbc447" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InventoryValuationScrappedInventoryAndOtherAdjustments_5f9c6489-9040-46a8-bf42-c768e96a544c" xlink:href="rock-20221231.xsd#rock_InventoryValuationScrappedInventoryAndOtherAdjustments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_InventoryRollForward_1dff807c-315a-4389-809c-33c73d363edf" xlink:to="loc_rock_InventoryValuationScrappedInventoryAndOtherAdjustments_5f9c6489-9040-46a8-bf42-c768e96a544c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves_6b7c2f43-12d6-410c-8db1-4ca9838eca3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_InventoryRollForward_1dff807c-315a-4389-809c-33c73d363edf" xlink:to="loc_us-gaap_InventoryValuationReserves_6b7c2f43-12d6-410c-8db1-4ca9838eca3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PropertyPlantandEquipmentDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandAndLandImprovements_febeaf3e-1b7a-4ab2-8018-29bec90240b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandAndLandImprovements"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:to="loc_us-gaap_LandAndLandImprovements_febeaf3e-1b7a-4ab2-8018-29bec90240b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_158026fa-c1fc-4185-b3c4-a6d66ea6499f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_158026fa-c1fc-4185-b3c4-a6d66ea6499f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_dd94da2c-98c0-43eb-b1f5-b23e5d69617f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_dd94da2c-98c0-43eb-b1f5-b23e5d69617f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross_de67d13d-fc4a-4040-b574-28493624a8ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:to="loc_us-gaap_ConstructionInProgressGross_de67d13d-fc4a-4040-b574-28493624a8ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_a8d25921-976c-406d-b62e-d2b3e9a8778a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_a8d25921-976c-406d-b62e-d2b3e9a8778a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_cb56becd-8a81-49ad-925a-90144df1602f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_cb56becd-8a81-49ad-925a-90144df1602f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_0da64215-0a94-48ab-b381-d5ee9b72a81a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d79d239d-bc15-4b20-8a28-26aec10d94a3" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_0da64215-0a94-48ab-b381-d5ee9b72a81a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_c0b6eda8-6078-4230-b215-a10df87ad421" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_c0b6eda8-6078-4230-b215-a10df87ad421" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_45d27972-5eea-42c6-b88f-9334c063f1ea" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_srt_RangeAxis_45d27972-5eea-42c6-b88f-9334c063f1ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_45d27972-5eea-42c6-b88f-9334c063f1ea" xlink:to="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_ca105ea3-08ec-43bf-a9db-783557bb3e03" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:to="loc_srt_MinimumMember_ca105ea3-08ec-43bf-a9db-783557bb3e03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_61b86e25-bca3-45ba-8d66-77d368ea00e6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_93a2a06f-f360-4a11-99aa-f97ddf024c89" xlink:to="loc_srt_MaximumMember_61b86e25-bca3-45ba-8d66-77d368ea00e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_dfcce036-9bb8-4fd2-a0ce-a5a146165cb1" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_QualityAluminumProductsMember_92152f61-9d98-41ae-95cb-ed6ea814830a" xlink:href="rock-20221231.xsd#rock_QualityAluminumProductsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_QualityAluminumProductsMember_92152f61-9d98-41ae-95cb-ed6ea814830a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TerraSmartLLCMember_f1cb7072-0656-47a7-9543-b6f367370539" xlink:href="rock-20221231.xsd#rock_TerraSmartLLCMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_TerraSmartLLCMember_f1cb7072-0656-47a7-9543-b6f367370539" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationMember_4f733009-aead-4aa9-ab31-21732db226c0" xlink:href="rock-20221231.xsd#rock_SunfigCorporationMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_SunfigCorporationMember_4f733009-aead-4aa9-ab31-21732db226c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ArchitecturalMailboxesLLCMember_62264e8b-ff9b-48b6-90d2-5ce290b80d31" xlink:href="rock-20221231.xsd#rock_ArchitecturalMailboxesLLCMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_ArchitecturalMailboxesLLCMember_62264e8b-ff9b-48b6-90d2-5ce290b80d31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeltaSeparationsLLCMember_e702c055-7f75-4e57-9835-b62c6962c72e" xlink:href="rock-20221231.xsd#rock_DeltaSeparationsLLCMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_DeltaSeparationsLLCMember_e702c055-7f75-4e57-9835-b62c6962c72e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ThermoEnergySystemsMember_50a89f0f-8681-41b7-b4f9-176405b055e7" xlink:href="rock-20221231.xsd#rock_ThermoEnergySystemsMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_c1647b86-eea5-4f64-96d5-3a2db16feb7e" xlink:to="loc_rock_ThermoEnergySystemsMember_50a89f0f-8681-41b7-b4f9-176405b055e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_2098fe80-b63c-417a-877d-6c38a4d7b092" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_2098fe80-b63c-417a-877d-6c38a4d7b092" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_cd4b9af2-dd5f-4fac-a57c-11ffc9850e23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_2098fe80-b63c-417a-877d-6c38a4d7b092" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_cd4b9af2-dd5f-4fac-a57c-11ffc9850e23" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_25f513e4-0833-487b-9539-a9c603a22ae2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_cd4b9af2-dd5f-4fac-a57c-11ffc9850e23" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_25f513e4-0833-487b-9539-a9c603a22ae2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3162708f-f5c7-4831-964f-f9cf720ae93c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3162708f-f5c7-4831-964f-f9cf720ae93c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3162708f-f5c7-4831-964f-f9cf720ae93c" xlink:to="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_55240674-c2d6-4fec-ba52-5f597863b9c5" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:to="loc_rock_RenewablesMember_55240674-c2d6-4fec-ba52-5f597863b9c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_59599570-dd4c-4bcc-9d79-b55a53994795" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:to="loc_rock_AgtechMember_59599570-dd4c-4bcc-9d79-b55a53994795" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_62d8371a-4167-4f11-8fc5-f9fa583a7151" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_63d67163-345e-48ce-b6bc-9da25c833eb6" xlink:to="loc_rock_ResidentialMember_62d8371a-4167-4f11-8fc5-f9fa583a7151" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fc837791-197a-450b-b59f-3e23f13afeec" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3a4a85c3-b1f1-4396-8690-933a2a77decc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3a4a85c3-b1f1-4396-8690-933a2a77decc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_57f4aa3e-96a2-4413-b827-3cf5d7142c13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:to="loc_us-gaap_Goodwill_57f4aa3e-96a2-4413-b827-3cf5d7142c13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfBusinessesAcquired_0b2e2421-4c5d-46a6-a33d-8d6028e28fff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfBusinessesAcquired"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b16cf201-414e-4d7b-a13c-84b530e96146" xlink:to="loc_us-gaap_NumberOfBusinessesAcquired_0b2e2421-4c5d-46a6-a33d-8d6028e28fff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_955a857a-1952-45c9-b352-29c273039bd9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_3fac3032-0c91-4a21-ac66-8cd59f56217f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_955a857a-1952-45c9-b352-29c273039bd9" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_3fac3032-0c91-4a21-ac66-8cd59f56217f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_2fabbf2a-8a75-4522-997b-ebd1d0d3d731" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_3fac3032-0c91-4a21-ac66-8cd59f56217f" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_2fabbf2a-8a75-4522-997b-ebd1d0d3d731" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_2fabbf2a-8a75-4522-997b-ebd1d0d3d731" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_QualityAluminumProductsMember_49d6f481-6261-47da-a8a2-0f2bd27d724d" xlink:href="rock-20221231.xsd#rock_QualityAluminumProductsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:to="loc_rock_QualityAluminumProductsMember_49d6f481-6261-47da-a8a2-0f2bd27d724d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TerraSmartLLCMember_24f7e4b8-4009-4aaa-b639-7d2fdb630adc" xlink:href="rock-20221231.xsd#rock_TerraSmartLLCMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:to="loc_rock_TerraSmartLLCMember_24f7e4b8-4009-4aaa-b639-7d2fdb630adc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_047e6d24-8bfb-4ede-b8fb-da4e1d8f36ef" xlink:href="rock-20221231.xsd#rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_12a222d4-9781-4cf3-8c88-778f8e310fea" xlink:to="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_047e6d24-8bfb-4ede-b8fb-da4e1d8f36ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_3fac3032-0c91-4a21-ac66-8cd59f56217f" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_643f1429-2ef7-4bcb-9806-962e77092fee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_643f1429-2ef7-4bcb-9806-962e77092fee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_dd8a0219-90f0-4201-b9f0-1ba2600be09c" xlink:href="rock-20221231.xsd#rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital_dd8a0219-90f0-4201-b9f0-1ba2600be09c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_72c3c221-83e3-4515-bc53-8b943e6183fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_72c3c221-83e3-4515-bc53-8b943e6183fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_424db610-b1b1-4d08-9a6c-bbf3ad91a7df" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_424db610-b1b1-4d08-9a6c-bbf3ad91a7df" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_5153ac0e-70f9-4229-948e-af27ac96e48c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_5153ac0e-70f9-4229-948e-af27ac96e48c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_90b062a5-164e-48c7-b482-5c435a5e8d3d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_90b062a5-164e-48c7-b482-5c435a5e8d3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_a0b41a17-ff9c-4d8c-82c3-c7d1899a023a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_a0b41a17-ff9c-4d8c-82c3-c7d1899a023a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_e7cfdf2c-4096-450d-98d3-3e8e9616806b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_Goodwill_e7cfdf2c-4096-450d-98d3-3e8e9616806b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_117fb177-0f3b-4054-9524-9e10d202ba5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_00a57c62-b60a-406f-a2bd-45f0c7cfdf3f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_117fb177-0f3b-4054-9524-9e10d202ba5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsScheduleofAcquiredIntangibleAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_b0045402-5558-4e35-9326-65cd135f87d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_b0045402-5558-4e35-9326-65cd135f87d6" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_da02de83-d1d3-4aa6-964f-89b221c6643b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_da02de83-d1d3-4aa6-964f-89b221c6643b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_da02de83-d1d3-4aa6-964f-89b221c6643b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_QualityAluminumProductsMember_54339ad6-2dc7-4487-9fa9-d5dba1891dd0" xlink:href="rock-20221231.xsd#rock_QualityAluminumProductsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:to="loc_rock_QualityAluminumProductsMember_54339ad6-2dc7-4487-9fa9-d5dba1891dd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TerraSmartLLCMember_396d8cd5-5b8f-48f8-8e5d-01625d1ccc9c" xlink:href="rock-20221231.xsd#rock_TerraSmartLLCMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:to="loc_rock_TerraSmartLLCMember_396d8cd5-5b8f-48f8-8e5d-01625d1ccc9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_3750acf7-ba4b-47e8-900c-3ff261d7c6c7" xlink:href="rock-20221231.xsd#rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_624bfdc0-b246-4964-9fe0-4c8f97debc62" xlink:to="loc_rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember_3750acf7-ba4b-47e8-900c-3ff261d7c6c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a3bac7d7-3e06-4831-81bc-9f619683c08d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a3bac7d7-3e06-4831-81bc-9f619683c08d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a3bac7d7-3e06-4831-81bc-9f619683c08d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_884d3c95-c73d-4a8b-b74c-36454b7efbe3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_TrademarksMember_884d3c95-c73d-4a8b-b74c-36454b7efbe3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyEquipmentMember_412a17e4-8e64-4816-ada3-8d79fb5b297b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TechnologyEquipmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_TechnologyEquipmentMember_412a17e4-8e64-4816-ada3-8d79fb5b297b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_f465ed95-15b2-42a2-b80f-1c87b7c59f5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_CustomerRelationshipsMember_f465ed95-15b2-42a2-b80f-1c87b7c59f5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_80654736-bf8f-4865-a7ca-af39c78312a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_80654736-bf8f-4865-a7ca-af39c78312a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BacklogMember_b44b0f36-fdd4-4cea-81da-86a037c45f9f" xlink:href="rock-20221231.xsd#rock_BacklogMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4b9180de-0362-4c28-9c06-f5898e9886c5" xlink:to="loc_rock_BacklogMember_b44b0f36-fdd4-4cea-81da-86a037c45f9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_46389742-617c-4003-9c9e-d22fb49e845c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_46389742-617c-4003-9c9e-d22fb49e845c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_07f312b1-7166-4133-8b13-8c3c795ccc2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_46389742-617c-4003-9c9e-d22fb49e845c" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_07f312b1-7166-4133-8b13-8c3c795ccc2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_058c99be-064d-439e-b04f-bba221644f41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_07f312b1-7166-4133-8b13-8c3c795ccc2c" xlink:to="loc_us-gaap_TrademarksMember_058c99be-064d-439e-b04f-bba221644f41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_ecea92af-59b5-4c9f-a5a4-c82f6ec30250" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_srt_RangeAxis_ecea92af-59b5-4c9f-a5a4-c82f6ec30250" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_ecea92af-59b5-4c9f-a5a4-c82f6ec30250" xlink:to="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_3f15ac02-5c6e-4858-8a13-35c5115190be" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:to="loc_srt_MinimumMember_3f15ac02-5c6e-4858-8a13-35c5115190be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_52eadbd9-2e22-46ef-b30f-3baf3b576a59" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_91e32a3b-ddc5-4f2d-a89a-5b46d4e84b13" xlink:to="loc_srt_MaximumMember_52eadbd9-2e22-46ef-b30f-3baf3b576a59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_483f03cf-beb2-48e5-841d-795f9966eeb4" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefinitelivedIntangibleAssetsAcquired_04584432-246b-45f1-8a88-869550f61d5b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefinitelivedIntangibleAssetsAcquired"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:to="loc_us-gaap_IndefinitelivedIntangibleAssetsAcquired_04584432-246b-45f1-8a88-869550f61d5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_317708f1-e574-419a-bbec-2f3e6db0de30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_317708f1-e574-419a-bbec-2f3e6db0de30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_3625568c-3b05-4614-8edc-7791c9a7521f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_54e93b1f-dc2d-4a95-a5a6-007057a9f793" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_3625568c-3b05-4614-8edc-7791c9a7521f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AcquisitionsAcquisitionRelatedCostsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_608fa11d-4b64-4587-b462-b486f020ab8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_9540c2a1-38aa-414f-8ac0-e7bac06e6d66" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_608fa11d-4b64-4587-b462-b486f020ab8c" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_9540c2a1-38aa-414f-8ac0-e7bac06e6d66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_85295ee5-200e-4131-a9b6-26a0baa4162d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_9540c2a1-38aa-414f-8ac0-e7bac06e6d66" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_85295ee5-200e-4131-a9b6-26a0baa4162d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_85295ee5-200e-4131-a9b6-26a0baa4162d" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_4f81c291-d69d-4008-8b66-d1286a718977" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:to="loc_us-gaap_CostOfSalesMember_4f81c291-d69d-4008-8b66-d1286a718977" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_f186af69-e7d4-45b0-9f3b-aa6e4d4ed371" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_d783cd54-cc76-4599-ba72-62383fd883f2" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_f186af69-e7d4-45b0-9f3b-aa6e4d4ed371" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_ac47ac74-f0bd-4301-86ce-13826b21310e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_9540c2a1-38aa-414f-8ac0-e7bac06e6d66" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_ac47ac74-f0bd-4301-86ce-13826b21310e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_b1091591-bd8a-43d3-bea5-bab1b60bb491" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_ac47ac74-f0bd-4301-86ce-13826b21310e" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_b1091591-bd8a-43d3-bea5-bab1b60bb491" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_e59232c8-3b3b-4dd2-8c5d-edc05fb75640" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_e74da461-717b-4d4f-b2d2-981b86414baf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_e59232c8-3b3b-4dd2-8c5d-edc05fb75640" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_e74da461-717b-4d4f-b2d2-981b86414baf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3625c0e0-9f78-408e-b8b6-5b70504eaa21" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_e74da461-717b-4d4f-b2d2-981b86414baf" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3625c0e0-9f78-408e-b8b6-5b70504eaa21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3625c0e0-9f78-408e-b8b6-5b70504eaa21" xlink:to="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_bc86e925-3949-42c0-b588-dc89e4b635cd" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_RenewablesMember_bc86e925-3949-42c0-b588-dc89e4b635cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_c671a3a6-6311-487b-b9b2-c2519c409da4" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_ResidentialMember_c671a3a6-6311-487b-b9b2-c2519c409da4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_adb0c054-a163-496b-bae6-5670b3c91aac" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_AgtechMember_adb0c054-a163-496b-bae6-5670b3c91aac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_06462bdd-61d7-440f-a5ad-1253a22a5547" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_ddf4e31d-59ff-45a9-92bb-9f1c30dc0a51" xlink:to="loc_rock_InfrastructureMember_06462bdd-61d7-440f-a5ad-1253a22a5547" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_cf41b30a-f4cc-409d-a4d8-2d41d122c0a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_e74da461-717b-4d4f-b2d2-981b86414baf" xlink:to="loc_us-gaap_GoodwillLineItems_cf41b30a-f4cc-409d-a4d8-2d41d122c0a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_cf41b30a-f4cc-409d-a4d8-2d41d122c0a3" xlink:to="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_6e57b649-93b2-4baf-9ee8-611cba6e57fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_Goodwill_6e57b649-93b2-4baf-9ee8-611cba6e57fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_71c53051-4859-4384-9e46-853e77d603da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_71c53051-4859-4384-9e46-853e77d603da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_00b9f7ac-3fba-436a-8edf-b3ec1291d0d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_00b9f7ac-3fba-436a-8edf-b3ec1291d0d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_38cfc6ac-c23d-42e8-8707-a22caa85f696" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_38cfc6ac-c23d-42e8-8707-a22caa85f696" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_5a0a4994-de01-44e5-b53c-766c8d7b3144" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_ff1acf8f-67b0-4478-ae45-4ced53b8fbbf" xlink:to="loc_us-gaap_Goodwill_5a0a4994-de01-44e5-b53c-766c8d7b3144" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3af65eff-c1fd-4526-a831-d90ad2449fe7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_b49d7dc5-142a-4e40-b60f-ecd972c1c7b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3af65eff-c1fd-4526-a831-d90ad2449fe7" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_b49d7dc5-142a-4e40-b60f-ecd972c1c7b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_209406ed-b45e-4b67-bd11-7191f9a979f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_b49d7dc5-142a-4e40-b60f-ecd972c1c7b0" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_209406ed-b45e-4b67-bd11-7191f9a979f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9881a1a3-1c93-475a-a166-b50bd21e513f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_209406ed-b45e-4b67-bd11-7191f9a979f8" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9881a1a3-1c93-475a-a166-b50bd21e513f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_ed230e36-59f3-44f2-8436-27ba0d47b3c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9881a1a3-1c93-475a-a166-b50bd21e513f" xlink:to="loc_us-gaap_TrademarksMember_ed230e36-59f3-44f2-8436-27ba0d47b3c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_b49d7dc5-142a-4e40-b60f-ecd972c1c7b0" xlink:to="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_a8711293-7196-48cf-a883-bc8bbf88d3b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_a8711293-7196-48cf-a883-bc8bbf88d3b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_e1a90b72-e1f9-45be-8731-fa98301cd35c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_e1a90b72-e1f9-45be-8731-fa98301cd35c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_88ace7e5-8eab-4f83-becb-5ff96669b59d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_88ace7e5-8eab-4f83-becb-5ff96669b59d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportingUnits_6019e40b-3145-4fa7-81e2-80333be817aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportingUnits"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_NumberOfReportingUnits_6019e40b-3145-4fa7-81e2-80333be817aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits_2eb14849-ed75-45c9-b251-6340e8db4ef4" xlink:href="rock-20221231.xsd#rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits_2eb14849-ed75-45c9-b251-6340e8db4ef4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_a8d7459b-d0b1-42f8-bbab-89c983096fc2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_ea01b0bb-b0be-4083-8661-7958f337a67a" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_a8d7459b-d0b1-42f8-bbab-89c983096fc2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4cc62867-f856-4500-a986-84347f5d556c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4cc62867-f856-4500-a986-84347f5d556c" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_bb386251-7001-4ebb-92a1-109a8bc684f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_bb386251-7001-4ebb-92a1-109a8bc684f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f103e0f1-da90-468c-a23e-4e520f53514b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_bb386251-7001-4ebb-92a1-109a8bc684f1" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f103e0f1-da90-468c-a23e-4e520f53514b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_1a49a914-8926-4d74-8012-811f9951929b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f103e0f1-da90-468c-a23e-4e520f53514b" xlink:to="loc_us-gaap_TrademarksMember_1a49a914-8926-4d74-8012-811f9951929b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_d0ea0fcd-ed62-4dec-9805-0397a482df5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_d0ea0fcd-ed62-4dec-9805-0397a482df5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_d0ea0fcd-ed62-4dec-9805-0397a482df5e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_6b5eee66-8118-410c-b4b8-37aeb133e86d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_TrademarksMember_6b5eee66-8118-410c-b4b8-37aeb133e86d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnpatentedTechnologyMember_2cf95988-1e99-42f7-b6c2-75e9ea288565" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnpatentedTechnologyMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_UnpatentedTechnologyMember_2cf95988-1e99-42f7-b6c2-75e9ea288565" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_47d2af4c-0c1d-4c31-8f56-11ceeffe2db6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_CustomerRelationshipsMember_47d2af4c-0c1d-4c31-8f56-11ceeffe2db6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_6c4ff0ea-dfb2-4184-9d47-2870cd7b0d51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_6c4ff0ea-dfb2-4184-9d47-2870cd7b0d51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_BacklogMember_de5492ac-c8fb-48db-9f45-de0d6d8553a7" xlink:href="rock-20221231.xsd#rock_BacklogMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_7b3b7979-7ebe-47a7-964b-7e32f3d69bd0" xlink:to="loc_rock_BacklogMember_de5492ac-c8fb-48db-9f45-de0d6d8553a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_df3b3f5b-1ff1-4ad4-9453-8d74bcd5d9dd" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_aacc9b43-ec1d-4e05-9abd-3ca4ff337ffc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_aacc9b43-ec1d-4e05-9abd-3ca4ff337ffc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_c5e0f771-4429-4163-9ddb-e1d111a5c769" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_c5e0f771-4429-4163-9ddb-e1d111a5c769" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AcquiredIntangibleAssetsTotal_4e650d26-baf3-4b3e-8bde-9ae600695e93" xlink:href="rock-20221231.xsd#rock_AcquiredIntangibleAssetsTotal"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_rock_AcquiredIntangibleAssetsTotal_4e650d26-baf3-4b3e-8bde-9ae600695e93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndefiniteLivedAccumulatedAmortization_a79e7549-c5a0-4958-a527-7c04edc39f92" xlink:href="rock-20221231.xsd#rock_IndefiniteLivedAccumulatedAmortization"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_rock_IndefiniteLivedAccumulatedAmortization_a79e7549-c5a0-4958-a527-7c04edc39f92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_6d646892-3847-4cb7-9285-082c6b9b68cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_6d646892-3847-4cb7-9285-082c6b9b68cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization_99684395-43f5-47a4-acf3-a5c64f7aaf1c" xlink:href="rock-20221231.xsd#rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_21d0aaf2-5183-4c32-99cf-464bdcb8449d" xlink:to="loc_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization_99684395-43f5-47a4-acf3-a5c64f7aaf1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_0ae9a2a2-9aec-4344-851f-1aa7acb93675" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_0ae9a2a2-9aec-4344-851f-1aa7acb93675" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_98758560-b10f-4be7-828e-1e05c25e6623" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_98758560-b10f-4be7-828e-1e05c25e6623" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_98758560-b10f-4be7-828e-1e05c25e6623" xlink:to="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_d436842f-f4fa-4b3b-bf3a-5b62d5b217e5" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:to="loc_rock_RenewablesMember_d436842f-f4fa-4b3b-bf3a-5b62d5b217e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_6281dfd0-2121-4b95-8826-924c9e6d2307" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:to="loc_rock_ResidentialMember_6281dfd0-2121-4b95-8826-924c9e6d2307" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_ffcc1083-5980-4597-83a4-4e50ca09b3c5" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_09aade1e-918c-4a9d-af04-38fcb09d02e7" xlink:to="loc_rock_InfrastructureMember_ffcc1083-5980-4597-83a4-4e50ca09b3c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_3a0be7e9-dd96-42ea-a734-f6163cc13ae3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_3a0be7e9-dd96-42ea-a734-f6163cc13ae3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3e3909e0-db50-4e4f-a7ee-e351da83ae4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_3a0be7e9-dd96-42ea-a734-f6163cc13ae3" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3e3909e0-db50-4e4f-a7ee-e351da83ae4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_850ca6f8-ba5d-4231-a6aa-409d6d6a95d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_3e3909e0-db50-4e4f-a7ee-e351da83ae4a" xlink:to="loc_us-gaap_TrademarksMember_850ca6f8-ba5d-4231-a6aa-409d6d6a95d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_91e020ef-52f0-41f3-8406-09f6cb00ac98" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_0d959252-1900-4e3b-b33f-06935993aaff" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_91e020ef-52f0-41f3-8406-09f6cb00ac98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_7ba67b38-fe05-4288-8704-7d8a8d2a1335" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_91e020ef-52f0-41f3-8406-09f6cb00ac98" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill_7ba67b38-fe05-4288-8704-7d8a8d2a1335" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_803f8d81-7046-40fa-8b8f-64b813f787ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_c762b857-0d1a-492b-992a-1f8a99648e5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_803f8d81-7046-40fa-8b8f-64b813f787ed" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_c762b857-0d1a-492b-992a-1f8a99648e5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_062d2357-b2a7-4f96-a8a4-23c2696ce5f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_bf48c4d7-aa4d-439f-8bf9-18edc68020bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_062d2357-b2a7-4f96-a8a4-23c2696ce5f9" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_bf48c4d7-aa4d-439f-8bf9-18edc68020bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_687a8bdc-cc67-4f36-9000-85bf7fc0d4bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_bf48c4d7-aa4d-439f-8bf9-18edc68020bc" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_687a8bdc-cc67-4f36-9000-85bf7fc0d4bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_68bf7170-8e83-4dd2-b8de-2ad861f64328" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_bf48c4d7-aa4d-439f-8bf9-18edc68020bc" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_68bf7170-8e83-4dd2-b8de-2ad861f64328" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_a29a626f-9fc8-4b81-93f2-208ab7ab304b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_bf48c4d7-aa4d-439f-8bf9-18edc68020bc" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_a29a626f-9fc8-4b81-93f2-208ab7ab304b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_79e4e4e6-8d3d-495d-b6ca-b4def54fb985" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_bf48c4d7-aa4d-439f-8bf9-18edc68020bc" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_79e4e4e6-8d3d-495d-b6ca-b4def54fb985" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_ddbdbe90-0c80-4459-a9e8-bed19745e022" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_bf48c4d7-aa4d-439f-8bf9-18edc68020bc" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_ddbdbe90-0c80-4459-a9e8-bed19745e022" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccruedExpensesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AccruedExpensesDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccruedExpensesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_bdc2fd0b-cb50-42a0-93e9-80fdee6c723d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_bdc2fd0b-cb50-42a0-93e9-80fdee6c723d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedSharebasedCompensationCurrent_6be7141b-13f2-4ee0-9c66-1ddfc514271b" xlink:href="rock-20221231.xsd#rock_AccruedSharebasedCompensationCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_rock_AccruedSharebasedCompensationCurrent_6be7141b-13f2-4ee0-9c66-1ddfc514271b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_77cdcf30-4b65-4fda-82ee-4d6fdd2ba1d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_77cdcf30-4b65-4fda-82ee-4d6fdd2ba1d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_b9dcc1b7-61cf-459b-a2f1-39764cb9d288" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_b9dcc1b7-61cf-459b-a2f1-39764cb9d288" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedCustomerRebatesCurrent_6d6a2f30-4e06-45c9-b3d2-eaef034d0e3b" xlink:href="rock-20221231.xsd#rock_AccruedCustomerRebatesCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_rock_AccruedCustomerRebatesCurrent_6d6a2f30-4e06-45c9-b3d2-eaef034d0e3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrent_e57f9c30-5912-4e4a-a09d-dd35044be5cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_AccruedInsuranceCurrent_e57f9c30-5912-4e4a-a09d-dd35044be5cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_f4d1f98a-50c3-4304-a072-2a292cd23fe6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_f4d1f98a-50c3-4304-a072-2a292cd23fe6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_6137f221-f690-4e08-975b-1cf3e8d7def6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_ContractWithCustomerLiability_6137f221-f690-4e08-975b-1cf3e8d7def6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_c4837864-ec9f-4629-a8cb-86690c63ad03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_c4837864-ec9f-4629-a8cb-86690c63ad03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_dcb87f49-9066-481b-832a-8527828e06ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_dcb87f49-9066-481b-832a-8527828e06ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_5c77e952-725b-4670-ac08-3a0113f9cbbb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_3114a235-5d7c-44bf-acd4-1a87652640a0" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_5c77e952-725b-4670-ac08-3a0113f9cbbb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DebtScheduleofLongtermDebtDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAbstract_6badca1c-c66a-4130-9fdf-c5424b0952d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_6badca1c-c66a-4130-9fdf-c5424b0952d4" xlink:to="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_a6471807-3c0c-469a-99ae-96d25c75103d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_a6471807-3c0c-469a-99ae-96d25c75103d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_3c9ea160-0273-4b73-a419-8dbb591f52ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_a6471807-3c0c-469a-99ae-96d25c75103d" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_3c9ea160-0273-4b73-a419-8dbb591f52ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_bfc7029d-a81c-4e23-8b4e-2d1aeddede03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_3c9ea160-0273-4b73-a419-8dbb591f52ab" xlink:to="loc_us-gaap_LineOfCreditMember_bfc7029d-a81c-4e23-8b4e-2d1aeddede03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:to="loc_us-gaap_DebtInstrumentAxis_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_dbaac05a-05ff-4ee4-a957-b23c739eac6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_ecd7e9aa-7adf-425f-86c1-ab10dac17cb0" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_dbaac05a-05ff-4ee4-a957-b23c739eac6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019SeniorCreditAgreementMember_8674743f-6556-484f-9313-afb478727c76" xlink:href="rock-20221231.xsd#rock_A2019SeniorCreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_dbaac05a-05ff-4ee4-a957-b23c739eac6f" xlink:to="loc_rock_A2019SeniorCreditAgreementMember_8674743f-6556-484f-9313-afb478727c76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f05e6c9d-4f62-45e4-9104-52284ec0b78e" xlink:to="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_bb9a9c9c-3b7b-49e5-8375-351779cad5f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_bb9a9c9c-3b7b-49e5-8375-351779cad5f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_cbcc0f33-044f-4a13-9fd0-e5d3b1d0fcf9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_cbcc0f33-044f-4a13-9fd0-e5d3b1d0fcf9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_f41a7315-0a37-473f-a984-54ac702115f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b3b0f51-3d39-4e95-9ba3-bbc6aef634c1" xlink:to="loc_us-gaap_LongTermDebt_f41a7315-0a37-473f-a984-54ac702115f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DebtNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DebtNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DebtNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAbstract_df575c9e-e6e6-4deb-a6f7-77d1745b6e88" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_df575c9e-e6e6-4deb-a6f7-77d1745b6e88" xlink:to="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_06515d45-e6fb-491f-8460-fd7900f3df1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_06515d45-e6fb-491f-8460-fd7900f3df1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_06515d45-e6fb-491f-8460-fd7900f3df1c" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_4a816fe4-b228-4993-afad-02a9bac30def" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:to="loc_us-gaap_LineOfCreditMember_4a816fe4-b228-4993-afad-02a9bac30def" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember_4d00301a-1ed2-423a-adfd-bb7d867ac7f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MediumTermNotesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_d8e5d507-d155-49fc-9eb0-4bb572f33a79" xlink:to="loc_us-gaap_MediumTermNotesMember_4d00301a-1ed2-423a-adfd-bb7d867ac7f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_e30a3be3-259c-4e5b-8e35-7203b45c5abe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_DebtInstrumentAxis_e30a3be3-259c-4e5b-8e35-7203b45c5abe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_e30a3be3-259c-4e5b-8e35-7203b45c5abe" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2022SeniorCreditAgreementMember_ac29c6af-c16f-428a-bbf2-b8816e2137ed" xlink:href="rock-20221231.xsd#rock_A2022SeniorCreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:to="loc_rock_A2022SeniorCreditAgreementMember_ac29c6af-c16f-428a-bbf2-b8816e2137ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019SeniorCreditAgreementMember_7f2f6f64-3eed-44c3-ba81-cbfebe2f6aec" xlink:href="rock-20221231.xsd#rock_A2019SeniorCreditAgreementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:to="loc_rock_A2019SeniorCreditAgreementMember_7f2f6f64-3eed-44c3-ba81-cbfebe2f6aec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SeniorCreditAgreementMember_e6c70bba-fd0e-4d3e-a78c-78de6e0b80fe" xlink:href="rock-20221231.xsd#rock_SeniorCreditAgreementMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b9e48ddb-ecd3-4154-b335-50cba967996c" xlink:to="loc_rock_SeniorCreditAgreementMember_e6c70bba-fd0e-4d3e-a78c-78de6e0b80fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_bcca531a-db0e-426f-b54d-2f04f002be08" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_CreditFacilityAxis_bcca531a-db0e-426f-b54d-2f04f002be08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_bcca531a-db0e-426f-b54d-2f04f002be08" xlink:to="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandbyLettersOfCreditMember_e92ef90a-8395-4e78-a5d5-28c3087cd43f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandbyLettersOfCreditMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:to="loc_us-gaap_StandbyLettersOfCreditMember_e92ef90a-8395-4e78-a5d5-28c3087cd43f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_26fef1d4-78d6-4500-8350-f8d666b857c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_322cd17b-66d1-4093-aec1-74cd24c7243c" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_26fef1d4-78d6-4500-8350-f8d666b857c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_e038f8aa-6eb0-468d-8062-085b37825141" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_srt_RangeAxis_e038f8aa-6eb0-468d-8062-085b37825141" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_e038f8aa-6eb0-468d-8062-085b37825141" xlink:to="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_d2a2b184-53c4-49bf-80aa-3db177a4fde2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:to="loc_srt_MinimumMember_d2a2b184-53c4-49bf-80aa-3db177a4fde2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_ee4b5263-ac57-4c79-adbb-a2a97435084b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_44be32a3-e1d4-4324-82a6-0267907db626" xlink:to="loc_srt_MaximumMember_ee4b5263-ac57-4c79-adbb-a2a97435084b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_1d9e4327-778d-4ab4-93f5-66aeaf8453ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_VariableRateAxis_1d9e4327-778d-4ab4-93f5-66aeaf8453ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_1d9e4327-778d-4ab4-93f5-66aeaf8453ce" xlink:to="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_99b1e6fb-32aa-4c80-8fe2-107b0034930e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BaseRateMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:to="loc_us-gaap_BaseRateMember_99b1e6fb-32aa-4c80-8fe2-107b0034930e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SecuredOvernightFinancingRateSOFRMember_81963d88-6f7c-491b-a11a-9fecae7f14a4" xlink:href="rock-20221231.xsd#rock_SecuredOvernightFinancingRateSOFRMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:to="loc_rock_SecuredOvernightFinancingRateSOFRMember_81963d88-6f7c-491b-a11a-9fecae7f14a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_9bccfdc6-477e-40ca-8216-d6f58ebec84b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_cb276af8-fee3-40b2-bf89-b4b9b5738f8c" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_9bccfdc6-477e-40ca-8216-d6f58ebec84b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentApplicableRatePeriodAxis_1507b2eb-f01d-48d2-8180-76d39a78253a" xlink:href="rock-20221231.xsd#rock_DebtInstrumentApplicableRatePeriodAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_rock_DebtInstrumentApplicableRatePeriodAxis_1507b2eb-f01d-48d2-8180-76d39a78253a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:href="rock-20221231.xsd#rock_DebtInstrumentApplicableRatePeriodDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodAxis_1507b2eb-f01d-48d2-8180-76d39a78253a" xlink:to="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApplicableRatePeriod1Member_1afec7af-8617-4537-9d39-13277fbd1648" xlink:href="rock-20221231.xsd#rock_ApplicableRatePeriod1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:to="loc_rock_ApplicableRatePeriod1Member_1afec7af-8617-4537-9d39-13277fbd1648" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApplicableRatePeriod2Member_2428a110-1e35-45c3-b6b7-4eb2d175c722" xlink:href="rock-20221231.xsd#rock_ApplicableRatePeriod2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_DebtInstrumentApplicableRatePeriodDomain_2f2b7dc0-f2a2-4009-94b5-0831814d115f" xlink:to="loc_rock_ApplicableRatePeriod2Member_2428a110-1e35-45c3-b6b7-4eb2d175c722" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_95d95b41-393f-4c0f-86a0-a0c1dabc7694" xlink:to="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_321d11a7-05d3-4fe9-a529-7dd38f55d654" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_321d11a7-05d3-4fe9-a529-7dd38f55d654" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d5ef26e6-258a-4eb3-9682-9476df55bceb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d5ef26e6-258a-4eb3-9682-9476df55bceb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_aaab1a64-761e-43d9-924e-531270adbc75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_aaab1a64-761e-43d9-924e-531270adbc75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DebtInstrumentNumberOfDebtCovenants_fddebb23-d649-420e-a13d-4c723d8bc6d3" xlink:href="rock-20221231.xsd#rock_DebtInstrumentNumberOfDebtCovenants"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_rock_DebtInstrumentNumberOfDebtCovenants_fddebb23-d649-420e-a13d-4c723d8bc6d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_cbdd314e-d16f-4357-92a0-27a81b299541" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_cbdd314e-d16f-4357-92a0-27a81b299541" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_a56af1e0-05ee-43bd-81b6-897ac5e802f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_a56af1e0-05ee-43bd-81b6-897ac5e802f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_551ecab4-3262-4d81-9548-502d7fa221bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LongTermDebt_551ecab4-3262-4d81-9548-502d7fa221bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3698bf65-9e90-4530-8ca7-653ccb224722" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3698bf65-9e90-4530-8ca7-653ccb224722" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_e3ef7ed8-fe3a-45b4-8993-67307f485f6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_e3ef7ed8-fe3a-45b4-8993-67307f485f6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_0b63bcdd-aa21-49c6-b7af-1837be11ffec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a15ae80e-9d63-4c92-8e16-fe35873c3899" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_0b63bcdd-aa21-49c6-b7af-1837be11ffec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DebtScheduleofCashPaidforInterestDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAbstract_9169e976-b504-4468-b78c-b240a120ac71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNet_36f94895-0b31-402c-8db5-5d18383329e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeExpenseNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_9169e976-b504-4468-b78c-b240a120ac71" xlink:to="loc_us-gaap_InterestIncomeExpenseNet_36f94895-0b31-402c-8db5-5d18383329e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeOther_82f735d7-7fb8-4240-ae0a-76de56662db2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_9169e976-b504-4468-b78c-b240a120ac71" xlink:to="loc_us-gaap_InterestIncomeOther_82f735d7-7fb8-4240-ae0a-76de56662db2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NoncashInterestAdjustment_9c761fc3-23d6-45d8-a2e9-73e8115221d2" xlink:href="rock-20221231.xsd#rock_NoncashInterestAdjustment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_9169e976-b504-4468-b78c-b240a120ac71" xlink:to="loc_rock_NoncashInterestAdjustment_9c761fc3-23d6-45d8-a2e9-73e8115221d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_18aae515-c0f2-4e5c-9c01-dc411998820a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermDebtAbstract_9169e976-b504-4468-b78c-b240a120ac71" xlink:to="loc_us-gaap_InterestPaidNet_18aae515-c0f2-4e5c-9c01-dc411998820a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract_15e97b43-c72a-4a0d-976b-04b5f98aa528" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_f972676a-cc1e-41a2-8d32-642470506901" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract_15e97b43-c72a-4a0d-976b-04b5f98aa528" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_f972676a-cc1e-41a2-8d32-642470506901" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_7aab1cc3-edb5-46a4-894d-d9561febc7f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_f972676a-cc1e-41a2-8d32-642470506901" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_7aab1cc3-edb5-46a4-894d-d9561febc7f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_7aab1cc3-edb5-46a4-894d-d9561febc7f2" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A401kPlanMember_56efdc62-deb5-4b5c-b4c5-894efbc4f2a3" xlink:href="rock-20221231.xsd#rock_A401kPlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:to="loc_rock_A401kPlanMember_56efdc62-deb5-4b5c-b4c5-894efbc4f2a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_079db30d-ca9d-4618-8ded-43edf580b420" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_079db30d-ca9d-4618-8ded-43edf580b420" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_0a2de03e-ff17-4df4-a756-8d1a3e77fed9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_a191dc28-635a-4cc1-bb39-58fa03cafa03" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_0a2de03e-ff17-4df4-a756-8d1a3e77fed9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_f972676a-cc1e-41a2-8d32-642470506901" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PostemploymentBenefitsPeriodExpense_f76168c9-5e70-4856-b313-bdd8360143d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsPeriodExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:to="loc_us-gaap_PostemploymentBenefitsPeriodExpense_f76168c9-5e70-4856-b313-bdd8360143d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RetirementPlanNumberOfPlans_acc4537f-9572-492e-9bfd-78faa519887c" xlink:href="rock-20221231.xsd#rock_RetirementPlanNumberOfPlans"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_a9618631-f552-445d-9627-a62ea151e299" xlink:to="loc_rock_RetirementPlanNumberOfPlans_acc4537f-9572-492e-9bfd-78faa519887c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract_e1bd2f4b-e006-450f-862a-f77a761f0690" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_b37e7a6d-f7c9-4331-aa72-443ff5a8aa3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract_e1bd2f4b-e006-450f-862a-f77a761f0690" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_b37e7a6d-f7c9-4331-aa72-443ff5a8aa3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_660886ac-9ab4-4b04-8544-638e72cf0df7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_b37e7a6d-f7c9-4331-aa72-443ff5a8aa3f" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_660886ac-9ab4-4b04-8544-638e72cf0df7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_6f303a2f-9074-44ea-a1e1-0bd1d1e728aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_660886ac-9ab4-4b04-8544-638e72cf0df7" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_6f303a2f-9074-44ea-a1e1-0bd1d1e728aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_41c0591f-7a54-4589-b906-39892511a363" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_6f303a2f-9074-44ea-a1e1-0bd1d1e728aa" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_41c0591f-7a54-4589-b906-39892511a363" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_b37e7a6d-f7c9-4331-aa72-443ff5a8aa3f" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_9f3367b2-48f1-448a-b832-21f83d8f875e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_9f3367b2-48f1-448a-b832-21f83d8f875e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_821decc6-61c7-4099-bbed-30eed0ee6d68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_821decc6-61c7-4099-bbed-30eed0ee6d68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_bc66c186-0067-41ab-b8fa-77309ef3dfc0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_bc66c186-0067-41ab-b8fa-77309ef3dfc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanPlanAmendments_82e7e0ac-a5f1-4138-a7bd-1f00380d00fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanPlanAmendments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanPlanAmendments_82e7e0ac-a5f1-4138-a7bd-1f00380d00fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_40c87cd9-c363-4da2-832c-f39a9d3f689f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanActuarialGainLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_40c87cd9-c363-4da2-832c-f39a9d3f689f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedNetLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_1a9809d5-a955-4980-8cb6-d98f33747601" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_1a9809d5-a955-4980-8cb6-d98f33747601" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_c6a91970-ef5b-440a-a050-0bee5c7e846c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_980bcfe8-9e73-478a-8896-b18c1b051bfc" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_c6a91970-ef5b-440a-a050-0bee5c7e846c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_48c8da6c-5d0d-4f7d-88f1-6a6f1b9a10ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_48c8da6c-5d0d-4f7d-88f1-6a6f1b9a10ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_bfcb413d-f4a9-4ab6-8780-f5208ef133e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_bfcb413d-f4a9-4ab6-8780-f5208ef133e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_8f325106-da0c-4f09-aefa-c72e4d5141d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax_8f325106-da0c-4f09-aefa-c72e4d5141d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_7c252bca-2283-42c0-ae47-01f5f0c905a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax_7c252bca-2283-42c0-ae47-01f5f0c905a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_050769b3-c6ef-4fb6-ba24-11f3e91d3821" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_76280c76-16d0-4926-b720-209b800fcf0a" xlink:to="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_050769b3-c6ef-4fb6-ba24-11f3e91d3821" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract_a90c75a2-1c3f-4d4e-86f6-5f7d4eb44920" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_8b671bf1-1aef-4b79-84d7-98d6689d7fbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract_a90c75a2-1c3f-4d4e-86f6-5f7d4eb44920" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_8b671bf1-1aef-4b79-84d7-98d6689d7fbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_b20a7459-143c-4fb0-ad75-aeee11b652ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_8b671bf1-1aef-4b79-84d7-98d6689d7fbf" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_b20a7459-143c-4fb0-ad75-aeee11b652ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_6fde6143-d1c9-4179-9a83-5741bb02ecb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_b20a7459-143c-4fb0-ad75-aeee11b652ae" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_6fde6143-d1c9-4179-9a83-5741bb02ecb8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a1cd8c6b-f874-4fad-a1c0-6b0f6b58a8ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_6fde6143-d1c9-4179-9a83-5741bb02ecb8" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a1cd8c6b-f874-4fad-a1c0-6b0f6b58a8ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_8b671bf1-1aef-4b79-84d7-98d6689d7fbf" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_f46ddd9c-72d9-491d-9513-2cda70468ad5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_f46ddd9c-72d9-491d-9513-2cda70468ad5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent_082640c2-0480-436a-9a3d-02fabb402160" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent_082640c2-0480-436a-9a3d-02fabb402160" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax_3421906e-67dc-4ad2-b3fb-b85549ec2a0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax_3421906e-67dc-4ad2-b3fb-b85549ec2a0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_47dc6012-f89a-4cf5-9e15-72b57a030104" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_60b3444e-69e0-4be7-99aa-a13989a46e71" xlink:to="loc_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet_47dc6012-f89a-4cf5-9e15-72b57a030104" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract_8bc71ed8-6421-4244-9252-914b78491c02" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NetPeriodicPostRetirementCostTable_f7a32475-32a1-48f9-873e-fede0c130395" xlink:href="rock-20221231.xsd#rock_NetPeriodicPostRetirementCostTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract_8bc71ed8-6421-4244-9252-914b78491c02" xlink:to="loc_rock_NetPeriodicPostRetirementCostTable_f7a32475-32a1-48f9-873e-fede0c130395" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_6107f14b-5e6a-4490-a2b0-05fabc3be4d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_NetPeriodicPostRetirementCostTable_f7a32475-32a1-48f9-873e-fede0c130395" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_6107f14b-5e6a-4490-a2b0-05fabc3be4d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_dd80c750-5c08-403f-a846-0d7ae1b9ee9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_6107f14b-5e6a-4490-a2b0-05fabc3be4d6" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_dd80c750-5c08-403f-a846-0d7ae1b9ee9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a6e17948-8d02-432c-9ea9-1fada1f7b6ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_dd80c750-5c08-403f-a846-0d7ae1b9ee9c" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_a6e17948-8d02-432c-9ea9-1fada1f7b6ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_NetPeriodicPostRetirementCostTable_f7a32475-32a1-48f9-873e-fede0c130395" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_1cc3d3df-af70-49bd-b17d-4a96ab0a51f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_1cc3d3df-af70-49bd-b17d-4a96ab0a51f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_08cded9b-6d8b-4324-b42b-3746fac0803c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_08cded9b-6d8b-4324-b42b-3746fac0803c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_e46366ee-0e0d-4c1e-a728-187f7ef46262" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_e46366ee-0e0d-4c1e-a728-187f7ef46262" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_0afc1503-f96d-417b-b53a-5604dfacfee8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_0afc1503-f96d-417b-b53a-5604dfacfee8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_bcca651a-9759-4178-9497-b82436eafeda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_bcca651a-9759-4178-9497-b82436eafeda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_b5c0c536-8afe-40d6-bb27-8bc6680d8488" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_b5c0c536-8afe-40d6-bb27-8bc6680d8488" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65_49a24f4b-15ff-4708-8eac-487b2d57c1b5" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65_49a24f4b-15ff-4708-8eac-487b2d57c1b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65_4886accb-087c-44a2-93cd-24508043d489" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65_4886accb-087c-44a2-93cd-24508043d489" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts_5b304a5f-f983-4197-ab4d-c40d936aa7bd" xlink:href="rock-20221231.xsd#rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts_5b304a5f-f983-4197-ab4d-c40d936aa7bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1_fda254a7-131c-4688-8dc6-f34bd3a2ccf2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8e092669-2616-42cf-aaee-1020e183938b" xlink:to="loc_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1_fda254a7-131c-4688-8dc6-f34bd3a2ccf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_rock_OtherPostretirementBenefitsAbstract_e9832305-28e5-443a-8648-265b03e89523" xlink:href="rock-20221231.xsd#rock_OtherPostretirementBenefitsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_20209266-98b7-465e-b00a-73757128be70" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rock_OtherPostretirementBenefitsAbstract_e9832305-28e5-443a-8648-265b03e89523" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_20209266-98b7-465e-b00a-73757128be70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_055f1a78-9530-472d-80c9-6d947f603065" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_20209266-98b7-465e-b00a-73757128be70" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_055f1a78-9530-472d-80c9-6d947f603065" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_0fbf1e78-41de-4a2d-9618-fa8119674d10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_055f1a78-9530-472d-80c9-6d947f603065" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_0fbf1e78-41de-4a2d-9618-fa8119674d10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_c4969c9c-bd32-4c24-a839-7b1f92ac7e47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_0fbf1e78-41de-4a2d-9618-fa8119674d10" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_c4969c9c-bd32-4c24-a839-7b1f92ac7e47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_20209266-98b7-465e-b00a-73757128be70" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_a7087675-c63c-47f2-95ae-9af6df478e02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_a7087675-c63c-47f2-95ae-9af6df478e02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_83cf403d-6a38-4003-9e28-ce30c62467ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_83cf403d-6a38-4003-9e28-ce30c62467ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_3ee8506f-87fc-44c9-bf6c-0f384d33fe90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_3ee8506f-87fc-44c9-bf6c-0f384d33fe90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_c70a2a32-c361-411c-b741-4f713dc6c154" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_c70a2a32-c361-411c-b741-4f713dc6c154" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_c039019c-5796-463c-b374-d42e363f2779" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_c039019c-5796-463c-b374-d42e363f2779" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_0b63b22d-49f6-4d41-9823-5007f886e2a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_2ae5ae0b-383b-4682-b717-49bd9347b1ff" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_0b63b22d-49f6-4d41-9823-5007f886e2a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#AccumulatedOtherComprehensiveIncomeLossDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_2ffd92c4-ed12-480c-b900-8f8c8c2f32ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_9db56998-6ee3-406c-b22d-8b17c991ef74" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_2ffd92c4-ed12-480c-b900-8f8c8c2f32ba" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_9db56998-6ee3-406c-b22d-8b17c991ef74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_3faae202-fd41-4bbc-a142-20e3afbe5f2e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_9db56998-6ee3-406c-b22d-8b17c991ef74" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_3faae202-fd41-4bbc-a142-20e3afbe5f2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_3faae202-fd41-4bbc-a142-20e3afbe5f2e" xlink:to="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_a63c3b19-32ef-49b8-9d40-faa182b117a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedTranslationAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_a63c3b19-32ef-49b8-9d40-faa182b117a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9aa86563-6269-4fcf-aaae-afc1a0f59657" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_826e1aa2-d643-4662-9e56-479614d75e8a" xlink:to="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9aa86563-6269-4fcf-aaae-afc1a0f59657" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_9db56998-6ee3-406c-b22d-8b17c991ef74" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_c19d6214-ebba-4374-b4e4-678b2ad74c8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_c19d6214-ebba-4374-b4e4-678b2ad74c8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeTax_1354f774-68dc-4ae5-b6ce-42e993101d71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeTax_1354f774-68dc-4ae5-b6ce-42e993101d71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_daf03a11-49c9-46f6-b1df-42f89dc5c11c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1_daf03a11-49c9-46f6-b1df-42f89dc5c11c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossTaxAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax_a5376b12-991f-4f61-b885-71ca73500feb" xlink:href="rock-20221231.xsd#rock_AccumulatedOtherComprehensiveIncomeLossTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:to="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax_a5376b12-991f-4f61-b885-71ca73500feb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossTax_fa5a5a08-302d-4385-9bd2-b49a0070b4f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossTax_fa5a5a08-302d-4385-9bd2-b49a0070b4f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax_6208530f-604e-4b37-95cd-e766fcc1aead" xlink:href="rock-20221231.xsd#rock_AccumulatedOtherComprehensiveIncomeLossTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossTaxAbstract_734d241f-4159-40e0-bef1-661827b618d3" xlink:to="loc_rock_AccumulatedOtherComprehensiveIncomeLossTax_6208530f-604e-4b37-95cd-e766fcc1aead" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AOCIAttributableToParentNetOfTaxRollForward"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1f56e0a9-834d-45dd-ae0d-24714fe10030" xlink:to="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_2aa4956f-fba4-468b-9b69-3dfdc585e0da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_2aa4956f-fba4-468b-9b69-3dfdc585e0da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax_094354aa-2077-4a9f-94aa-697bc21b46da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax_094354aa-2077-4a9f-94aa-697bc21b46da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_40273f78-c348-4d2e-b6a7-b8b90a7e9885" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_40273f78-c348-4d2e-b6a7-b8b90a7e9885" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_4da34447-3625-4900-9f69-eabfeb27326a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_66bf12f1-e343-4dd8-a575-64390be41221" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_4da34447-3625-4900-9f69-eabfeb27326a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_20c14335-e7e2-4f02-9fc9-375dad7953dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_20c14335-e7e2-4f02-9fc9-375dad7953dd" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_e94f16f3-6283-4054-a380-38683bfc9afe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_e94f16f3-6283-4054-a380-38683bfc9afe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_e94f16f3-6283-4054-a380-38683bfc9afe" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedExpensesCurrentMember_8b011659-6f9f-4fde-9565-a46318e702f6" xlink:href="rock-20221231.xsd#rock_AccruedExpensesCurrentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:to="loc_rock_AccruedExpensesCurrentMember_8b011659-6f9f-4fde-9565-a46318e702f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NonCurrentLiabilitiesMember_c9eb7293-0c24-4a43-b058-3bae7b1fcdde" xlink:href="rock-20221231.xsd#rock_NonCurrentLiabilitiesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_d53537ef-be39-4edf-8f42-0f849e923587" xlink:to="loc_rock_NonCurrentLiabilitiesMember_c9eb7293-0c24-4a43-b058-3bae7b1fcdde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_7e265536-3d72-4a2a-a60e-e71f801a675b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_PlanNameAxis_7e265536-3d72-4a2a-a60e-e71f801a675b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_7e265536-3d72-4a2a-a60e-e71f801a675b" xlink:to="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018PlanMember_ac86c29c-448c-42f4-84a8-e9f7772b9dee" xlink:href="rock-20221231.xsd#rock_A2018PlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_A2018PlanMember_ac86c29c-448c-42f4-84a8-e9f7772b9dee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_0c8bb277-5152-4294-a1bd-0c98120ae016" xlink:href="rock-20221231.xsd#rock_TwoThousandEighteenEquityIncentivePlanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_0c8bb277-5152-4294-a1bd-0c98120ae016" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandFifteenEquityIncentivePlanMember_2c13aa6d-afdd-4c09-a860-e1c1d9c878bc" xlink:href="rock-20221231.xsd#rock_TwoThousandFifteenEquityIncentivePlanMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_TwoThousandFifteenEquityIncentivePlanMember_2c13aa6d-afdd-4c09-a860-e1c1d9c878bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_NonEmployeeDirectorsPlanMember_1a195846-e850-47ff-ad48-ac4c494310d4" xlink:href="rock-20221231.xsd#rock_NonEmployeeDirectorsPlanMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_NonEmployeeDirectorsPlanMember_1a195846-e850-47ff-ad48-ac4c494310d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanMember_da3a69c4-b7e9-48cb-b007-5b98f92148b9" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_5ce447b0-c2f3-4075-99ba-90d84f4ff015" xlink:to="loc_rock_ManagementStockPurchasePlanMember_da3a69c4-b7e9-48cb-b007-5b98f92148b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_cb745dea-44aa-41f6-b46c-0ca910f42569" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_AwardTypeAxis_cb745dea-44aa-41f6-b46c-0ca910f42569" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_cb745dea-44aa-41f6-b46c-0ca910f42569" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_a3ee839c-ff2e-4b96-836e-c7e5d0c043d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_us-gaap_CommonStockMember_a3ee839c-ff2e-4b96-836e-c7e5d0c043d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_315dd519-3a99-464c-a75c-13baa488e3be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_us-gaap_PerformanceSharesMember_315dd519-3a99-464c-a75c-13baa488e3be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PerformanceSharesMarketConditionMember_2f659f71-f531-492b-b605-5f3ca3b68abd" xlink:href="rock-20221231.xsd#rock_PerformanceSharesMarketConditionMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_rock_PerformanceSharesMarketConditionMember_2f659f71-f531-492b-b605-5f3ca3b68abd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_0a18dcb9-14a8-42b3-9732-d08af4ccea84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_20f730cb-456c-4952-b2c4-71fd6a678a59" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_0a18dcb9-14a8-42b3-9732-d08af4ccea84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_srt_RangeAxis_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_6977145d-8403-4038-bd12-e73ce804a2da" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_b8d10c93-3d8c-40ac-ae91-c371c98b4fcb" xlink:to="loc_srt_RangeMember_6977145d-8403-4038-bd12-e73ce804a2da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_7211a493-8c30-4a88-8cb9-00aa56b48c17" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_6977145d-8403-4038-bd12-e73ce804a2da" xlink:to="loc_srt_MaximumMember_7211a493-8c30-4a88-8cb9-00aa56b48c17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_a044c0a4-c9c9-46bf-a84d-6fc4021a560f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_a044c0a4-c9c9-46bf-a84d-6fc4021a560f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_6a6205bf-b145-4956-8367-172c1c940e72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_a044c0a4-c9c9-46bf-a84d-6fc4021a560f" xlink:to="loc_us-gaap_EquityComponentDomain_6a6205bf-b145-4956-8367-172c1c940e72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanMember_8e20a804-9139-43d5-ac4c-8656b6f3fa9c" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6a6205bf-b145-4956-8367-172c1c940e72" xlink:to="loc_rock_ManagementStockPurchasePlanMember_8e20a804-9139-43d5-ac4c-8656b6f3fa9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a016ebda-7dcb-4dff-b3b4-3900ff8dbf26" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_5243439a-78e7-4736-8889-3203890b5e75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_5243439a-78e7-4736-8889-3203890b5e75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_eca8d239-d506-4737-a642-56b4b6490be1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_eca8d239-d506-4737-a642-56b4b6490be1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_404c2f20-5b2c-4204-8a9b-0426aeced01e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_404c2f20-5b2c-4204-8a9b-0426aeced01e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_c20eb044-1123-4b63-9261-ff1cd8275b15" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_c20eb044-1123-4b63-9261-ff1cd8275b15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_MarketPriceOfCommonStockPerShare_d3dfa9ab-9241-4e94-8f5d-841bff3273bd" xlink:href="rock-20221231.xsd#rock_MarketPriceOfCommonStockPerShare"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_MarketPriceOfCommonStockPerShare_d3dfa9ab-9241-4e94-8f5d-841bff3273bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2457fedb-cf89-4ae3-8016-986f0d091d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2457fedb-cf89-4ae3-8016-986f0d091d27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_224bb5ce-16f9-4bdf-a3e4-8046643bd8d7" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_224bb5ce-16f9-4bdf-a3e4-8046643bd8d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_e96382cb-6e13-4b41-a9ab-c8c827d47728" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_e96382cb-6e13-4b41-a9ab-c8c827d47728" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_33400728-1ff3-4ffe-a5a7-613c56a81eb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_33400728-1ff3-4ffe-a5a7-613c56a81eb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_35dc1491-fa1d-415b-a6a1-a72d1ae57757" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_35dc1491-fa1d-415b-a6a1-a72d1ae57757" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d8312938-8c4e-4469-8c93-623b495f1925" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d8312938-8c4e-4469-8c93-623b495f1925" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AccruedEquityBasedCompensation_e5861d8b-de89-474d-8d82-82056ccd09ba" xlink:href="rock-20221231.xsd#rock_AccruedEquityBasedCompensation"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_AccruedEquityBasedCompensation_e5861d8b-de89-474d-8d82-82056ccd09ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod_94da6fb4-019a-465a-91a4-6714a0f7c704" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5443f9f5-886b-4d4c-ad29-51d55a0c2ad9" xlink:to="loc_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod_94da6fb4-019a-465a-91a4-6714a0f7c704" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_484a3f27-044e-4d58-8feb-9b3531ae6718" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1ddf79eb-d6b2-49e4-904d-bfbdd8ce53fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_484a3f27-044e-4d58-8feb-9b3531ae6718" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1ddf79eb-d6b2-49e4-904d-bfbdd8ce53fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_b7b36312-f62a-46e2-9286-174bd6c33313" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1ddf79eb-d6b2-49e4-904d-bfbdd8ce53fa" xlink:to="loc_us-gaap_PlanNameAxis_b7b36312-f62a-46e2-9286-174bd6c33313" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_b7b36312-f62a-46e2-9286-174bd6c33313" xlink:to="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2015PlanMember_2c2194e5-3871-48c2-ac68-db0153dc7939" xlink:href="rock-20221231.xsd#rock_A2015PlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:to="loc_rock_A2015PlanMember_2c2194e5-3871-48c2-ac68-db0153dc7939" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018PlanMember_06cb7f70-3bbb-4e77-8f3e-fc5cd9757024" xlink:href="rock-20221231.xsd#rock_A2018PlanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_0e6c4765-0879-404a-9dfb-494f2ab1c81c" xlink:to="loc_rock_A2018PlanMember_06cb7f70-3bbb-4e77-8f3e-fc5cd9757024" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1ddf79eb-d6b2-49e4-904d-bfbdd8ce53fa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_95b58087-216e-43bf-b176-3ed319c3505c" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderTerminatedPlans"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans_95b58087-216e-43bf-b176-3ed319c3505c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_a3f29b86-ef7b-4c61-ada6-b91b1415e660" xlink:href="rock-20221231.xsd#rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan_a3f29b86-ef7b-4c61-ada6-b91b1415e660" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_1b06cd91-a511-44a9-842c-a1eab4a2e8ad" xlink:href="rock-20221231.xsd#rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation_1b06cd91-a511-44a9-842c-a1eab4a2e8ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_fb7d3976-ed0d-4cde-a142-337cbdd7d435" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_us-gaap_ShareBasedCompensation_fb7d3976-ed0d-4cde-a142-337cbdd7d435" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_b284bdb3-0ef7-48c1-9500-97c8dac97a3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1f96edc6-c246-45bf-b12e-0c178d5ca79b" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_b284bdb3-0ef7-48c1-9500-97c8dac97a3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_79a80e54-0fc6-4a76-86fa-b947185d2666" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_79a80e54-0fc6-4a76-86fa-b947185d2666" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateAxis_831ab7b3-d66c-47d7-877e-3c8d515d44bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:to="loc_us-gaap_AwardDateAxis_831ab7b3-d66c-47d7-877e-3c8d515d44bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardDateAxis_831ab7b3-d66c-47d7-877e-3c8d515d44bf" xlink:to="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2019Member_e6f200db-85d7-4ba7-b60a-d42963ca9174" xlink:href="rock-20221231.xsd#rock_A2019Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:to="loc_rock_A2019Member_e6f200db-85d7-4ba7-b60a-d42963ca9174" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018Member_72419b3b-2c50-41d9-99df-665488d54c86" xlink:href="rock-20221231.xsd#rock_A2018Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:to="loc_rock_A2018Member_72419b3b-2c50-41d9-99df-665488d54c86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2017Member_0fd77bae-8329-49a6-9bab-1723b3c7b840" xlink:href="rock-20221231.xsd#rock_A2017Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardDateDomain_5fb516a4-75d1-424e-a5a7-5ba11260f115" xlink:to="loc_rock_A2017Member_0fd77bae-8329-49a6-9bab-1723b3c7b840" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_de4d7c69-729b-4f5d-8e91-4f302a7d3eda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:to="loc_us-gaap_AwardTypeAxis_de4d7c69-729b-4f5d-8e91-4f302a7d3eda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_de4d7c69-729b-4f5d-8e91-4f302a7d3eda" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredStockUnitsMember_65a61282-b597-45da-9513-4a782f0b483a" xlink:href="rock-20221231.xsd#rock_DeferredStockUnitsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_rock_DeferredStockUnitsMember_65a61282-b597-45da-9513-4a782f0b483a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_6afacd64-d8e5-4d7c-9cb5-584c0c948104" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_us-gaap_RestrictedStockMember_6afacd64-d8e5-4d7c-9cb5-584c0c948104" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_6d5032cc-90e5-4056-86b5-6026ba033fcb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_6d5032cc-90e5-4056-86b5-6026ba033fcb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_20bc4400-0ca7-48de-af6b-fb5e7dd62ec9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_56114939-ac55-438e-8dbf-ce55d8f74fdf" xlink:to="loc_us-gaap_PerformanceSharesMember_20bc4400-0ca7-48de-af6b-fb5e7dd62ec9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e71f8ac3-e0e6-46fd-95a4-a63da1f11a96" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cf8d70b7-60d8-451d-b125-c2727292c5de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cf8d70b7-60d8-451d-b125-c2727292c5de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_1d12bcb9-5332-45e9-aeb9-b9d0a500ff11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0c837766-2af8-4d07-afa3-3a9cf3d5bb12" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_1d12bcb9-5332-45e9-aeb9-b9d0a500ff11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_f86a3459-597f-40e2-8540-2dfb6a107983" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ba074ed7-f124-4a99-9574-a5146cb8224d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_f86a3459-597f-40e2-8540-2dfb6a107983" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ba074ed7-f124-4a99-9574-a5146cb8224d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_a48625d2-96d8-48c1-b0fe-3758a660451d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ba074ed7-f124-4a99-9574-a5146cb8224d" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_a48625d2-96d8-48c1-b0fe-3758a660451d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_67ff3373-a2bc-415b-928e-8e69503e138a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_a48625d2-96d8-48c1-b0fe-3758a660451d" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_67ff3373-a2bc-415b-928e-8e69503e138a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ExercisePriceRangeOneMember_80e62582-1e30-4123-824a-d947694c2645" xlink:href="rock-20221231.xsd#rock_ExercisePriceRangeOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_67ff3373-a2bc-415b-928e-8e69503e138a" xlink:to="loc_rock_ExercisePriceRangeOneMember_80e62582-1e30-4123-824a-d947694c2645" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ba074ed7-f124-4a99-9574-a5146cb8224d" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_296eba3e-8b30-4b94-bdc7-9efbe8473896" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_296eba3e-8b30-4b94-bdc7-9efbe8473896" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_64caf43e-d0f2-41ee-85de-df581967d7b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_64caf43e-d0f2-41ee-85de-df581967d7b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_96623dbc-628a-445b-b7d3-3b9de927edc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_96623dbc-628a-445b-b7d3-3b9de927edc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_294004ad-e848-4f08-b085-bdd9ab66823b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_294004ad-e848-4f08-b085-bdd9ab66823b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_47f9b62f-38f7-4f88-9144-d3d3bb0cfbfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_47f9b62f-38f7-4f88-9144-d3d3bb0cfbfa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7007185a-64d5-4f74-8eb8-6799f870ab23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_266e60f5-98c8-400e-bc7c-fa72f26f3772" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7007185a-64d5-4f74-8eb8-6799f870ab23" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofStockOptionTransactionsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_b5192b2d-9606-412b-91db-c1bd903d8612" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_2ccd02c0-7f63-4e0d-a0ed-e6509324f7f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_b5192b2d-9606-412b-91db-c1bd903d8612" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_2ccd02c0-7f63-4e0d-a0ed-e6509324f7f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e1d9b679-fb6e-4e29-baca-e2fd086e32de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_2ccd02c0-7f63-4e0d-a0ed-e6509324f7f2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e1d9b679-fb6e-4e29-baca-e2fd086e32de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_3f604abb-e9e6-4d8c-b9b8-8a6a3c631041" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_2ccd02c0-7f63-4e0d-a0ed-e6509324f7f2" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_3f604abb-e9e6-4d8c-b9b8-8a6a3c631041" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_f30936f0-2890-4668-8511-140b86766a0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_2ccd02c0-7f63-4e0d-a0ed-e6509324f7f2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_f30936f0-2890-4668-8511-140b86766a0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_c4f8cd4d-38a8-483c-91ff-43fca2ad4c2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_2ccd02c0-7f63-4e0d-a0ed-e6509324f7f2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_c4f8cd4d-38a8-483c-91ff-43fca2ad4c2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_13494b77-faac-480e-889f-ead28899770a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_b5192b2d-9606-412b-91db-c1bd903d8612" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_13494b77-faac-480e-889f-ead28899770a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_5774cba6-e6b1-47af-a830-7add76cc9f64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_13494b77-faac-480e-889f-ead28899770a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_5774cba6-e6b1-47af-a830-7add76cc9f64" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_ec4d2446-3080-4127-910f-e1dcbd6e30cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_13494b77-faac-480e-889f-ead28899770a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_ec4d2446-3080-4127-910f-e1dcbd6e30cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_4ff631cc-3247-431b-a0d0-7bb8a785ece1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_13494b77-faac-480e-889f-ead28899770a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_4ff631cc-3247-431b-a0d0-7bb8a785ece1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_c53f1657-9c39-4842-863b-bd6f6a146585" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_13494b77-faac-480e-889f-ead28899770a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_c53f1657-9c39-4842-863b-bd6f6a146585" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_05b3487f-87ba-4111-b4c2-fdea7bc219d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_b5192b2d-9606-412b-91db-c1bd903d8612" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_05b3487f-87ba-4111-b4c2-fdea7bc219d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_c978726f-cd0f-46fd-b837-54097ed8b11b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_b5192b2d-9606-412b-91db-c1bd903d8612" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_c978726f-cd0f-46fd-b837-54097ed8b11b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_3af80462-f5a5-46f0-86bd-580bee8dd407" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_3af80462-f5a5-46f0-86bd-580bee8dd407" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_us-gaap_PlanNameAxis_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_09fb82ce-8784-4abf-a6f2-7510a6b9c0d0" xlink:to="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_2a0e06b8-df0d-4965-b107-3fd58a40f891" xlink:href="rock-20221231.xsd#rock_TwoThousandEighteenEquityIncentivePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:to="loc_rock_TwoThousandEighteenEquityIncentivePlanMember_2a0e06b8-df0d-4965-b107-3fd58a40f891" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_A2018PlanMember_8b1e2bb8-26a7-4df2-84c2-82cadbcb9ed4" xlink:href="rock-20221231.xsd#rock_A2018PlanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_137b19e0-b906-4836-aeae-729f0e06f180" xlink:to="loc_rock_A2018PlanMember_8b1e2bb8-26a7-4df2-84c2-82cadbcb9ed4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MeasurementInputTypeAxis_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_us-gaap_MeasurementInputTypeAxis_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeAxis_a4d19cc8-9b3d-469a-8e63-3f22d16c6b55" xlink:to="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember_bca7d5ce-e14a-42d6-9f12-b134bc58ab7d" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:to="loc_rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember_bca7d5ce-e14a-42d6-9f12-b134bc58ab7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember_fb75956f-ea79-4bcc-a5bf-44ed4d1e72bb" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementGrossProfitThresholdMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:to="loc_rock_SharebasedCompensationMeasurementGrossProfitThresholdMember_fb75956f-ea79-4bcc-a5bf-44ed4d1e72bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember_e770bfd4-3088-4fcd-8c92-f6b17f0e63fb" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationMeasurementTotalShareholderReturnMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_60f94df1-4f07-486a-b4f1-c1082d1c766a" xlink:to="loc_rock_SharebasedCompensationMeasurementTotalShareholderReturnMember_e770bfd4-3088-4fcd-8c92-f6b17f0e63fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_5fbb6ebf-d140-48e4-a283-2d6d911706c7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_srt_RangeAxis_5fbb6ebf-d140-48e4-a283-2d6d911706c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_5fbb6ebf-d140-48e4-a283-2d6d911706c7" xlink:to="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_14b60f7a-30ce-44bb-96aa-6e54047ef761" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:to="loc_srt_MinimumMember_14b60f7a-30ce-44bb-96aa-6e54047ef761" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_c13c5679-bb5e-4de6-a95b-a3beb4ac6890" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_7eb2e3d7-7ad7-4030-bb6e-e84055eb3ae5" xlink:to="loc_srt_MaximumMember_c13c5679-bb5e-4de6-a95b-a3beb4ac6890" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_06159af6-d0c5-49a4-9d6b-e9d749116643" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_us-gaap_AwardTypeAxis_06159af6-d0c5-49a4-9d6b-e9d749116643" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_06159af6-d0c5-49a4-9d6b-e9d749116643" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_afe60064-0cc6-435b-81a4-d21028cbd3f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_afe60064-0cc6-435b-81a4-d21028cbd3f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_19b05e06-a4d6-4efe-8c3d-0f68f7f75885" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_us-gaap_RestrictedStockMember_19b05e06-a4d6-4efe-8c3d-0f68f7f75885" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_ffdee445-c25f-4ff8-b4e4-17a0eb49cbae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_us-gaap_PerformanceSharesMember_ffdee445-c25f-4ff8-b4e4-17a0eb49cbae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredStockUnitsMember_48f6f5f1-3b2b-4275-a05f-79b760d4f645" xlink:href="rock-20221231.xsd#rock_DeferredStockUnitsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6a78ed28-1d3c-4c34-8d51-98b45dbed398" xlink:to="loc_rock_DeferredStockUnitsMember_48f6f5f1-3b2b-4275-a05f-79b760d4f645" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_cfd7c7f9-397e-4fdb-bf3b-fad9536ca744" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2d2050e0-beeb-4176-b5a5-d3c87061dac1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2d2050e0-beeb-4176-b5a5-d3c87061dac1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_b3a0a1d5-35e6-44b0-baae-1eba13362e5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_b3a0a1d5-35e6-44b0-baae-1eba13362e5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod_9fa164c7-2f7b-41ef-aff2-604470f140bc" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod_9fa164c7-2f7b-41ef-aff2-604470f140bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_e600a0f6-3562-453a-aa0d-434bf4cfb0b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_e600a0f6-3562-453a-aa0d-434bf4cfb0b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_bb4a359f-f176-4f94-8988-5b8127bde873" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_bb4a359f-f176-4f94-8988-5b8127bde873" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_c9d58047-a556-45d5-8017-5674ea33225c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_13175385-4e9c-4094-8fea-0143148845cb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_c9d58047-a556-45d5-8017-5674ea33225c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_3023e1bb-f6b3-4d94-9967-c375912c27ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_3023e1bb-f6b3-4d94-9967-c375912c27ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_4464609f-fc85-43b7-a359-0d0f3c5cb60d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_4464609f-fc85-43b7-a359-0d0f3c5cb60d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue_f2bffd4f-cc51-4547-8989-8c9e4dfe1024" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue_f2bffd4f-cc51-4547-8989-8c9e4dfe1024" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8b043b0c-2e8c-4d58-87b7-b259dae5ab14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8b043b0c-2e8c-4d58-87b7-b259dae5ab14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_4b8999f2-635d-44fc-a3f3-adcba354a739" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_4b8999f2-635d-44fc-a3f3-adcba354a739" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_71604e2b-9fc4-42a6-b0c4-e4c810c96558" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4509f114-b843-4bc1-b9a9-4e96fd9e60e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_71604e2b-9fc4-42a6-b0c4-e4c810c96558" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent_a4f1f978-c0e2-4131-8b6f-6599253ba3ab" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent_a4f1f978-c0e2-4131-8b6f-6599253ba3ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_7177ac10-29c2-4d4d-a4d5-716f84181dec" xlink:href="rock-20221231.xsd#rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod_7177ac10-29c2-4d4d-a4d5-716f84181dec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved_f1ae19fb-4a92-4b87-aeda-51db185063db" xlink:href="rock-20221231.xsd#rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fb8a5c7c-f54c-4cbc-aafd-1dbf49b30092" xlink:to="loc_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved_f1ae19fb-4a92-4b87-aeda-51db185063db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_5d2b2e1f-64b9-455e-b77e-bd18286a9b4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_121d4a7c-cd27-46b1-9058-bf3fc0dfb5d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_5d2b2e1f-64b9-455e-b77e-bd18286a9b4e" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_121d4a7c-cd27-46b1-9058-bf3fc0dfb5d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_27853d54-b982-45e5-a251-6e95fabb7081" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_121d4a7c-cd27-46b1-9058-bf3fc0dfb5d7" xlink:to="loc_us-gaap_AwardTypeAxis_27853d54-b982-45e5-a251-6e95fabb7081" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_27853d54-b982-45e5-a251-6e95fabb7081" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_592118d5-b60b-4340-a2a2-78c08bcdc3a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_592118d5-b60b-4340-a2a2-78c08bcdc3a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_a2164a8b-2e29-47b7-a076-061e69c1fb35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_us-gaap_RestrictedStockMember_a2164a8b-2e29-47b7-a076-061e69c1fb35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_PerformanceStockUnitsMember_8cfe7154-b909-4e7f-8cb7-beaddce77a46" xlink:href="rock-20221231.xsd#rock_PerformanceStockUnitsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_rock_PerformanceStockUnitsMember_8cfe7154-b909-4e7f-8cb7-beaddce77a46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredStockUnitsMember_b710088e-6681-43d5-8dca-d552b8ac04b7" xlink:href="rock-20221231.xsd#rock_DeferredStockUnitsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d0614c13-2c1e-4952-8520-98730bd1be48" xlink:to="loc_rock_DeferredStockUnitsMember_b710088e-6681-43d5-8dca-d552b8ac04b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_121d4a7c-cd27-46b1-9058-bf3fc0dfb5d7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_b206dec3-5b8f-420e-a35f-4c32f209878a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_b206dec3-5b8f-420e-a35f-4c32f209878a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_49c7466a-3a6a-4c2e-8ef6-af8147f5d7e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_4283850c-575a-42d6-90cf-27a4c6bd57e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_49c7466a-3a6a-4c2e-8ef6-af8147f5d7e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_03cefc5e-6672-4032-b677-eabfe08ccdc8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_03cefc5e-6672-4032-b677-eabfe08ccdc8" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualAxis_8fce3e29-c2fc-4cc1-b708-c73afd2b355e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:to="loc_srt_TitleOfIndividualAxis_8fce3e29-c2fc-4cc1-b708-c73afd2b355e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bb79988e-dd37-4491-9f99-947918998ccc" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_8fce3e29-c2fc-4cc1-b708-c73afd2b355e" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bb79988e-dd37-4491-9f99-947918998ccc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ManagementMember_88abafa5-4277-426d-90a3-031b5cf531b1" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ManagementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bb79988e-dd37-4491-9f99-947918998ccc" xlink:to="loc_srt_ManagementMember_88abafa5-4277-426d-90a3-031b5cf531b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_0f357616-a6da-4809-b9b7-37d6e4dcf34d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:to="loc_us-gaap_AwardTypeAxis_0f357616-a6da-4809-b9b7-37d6e4dcf34d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6930a4d6-4a32-4291-bc34-7aee369dad82" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_0f357616-a6da-4809-b9b7-37d6e4dcf34d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6930a4d6-4a32-4291-bc34-7aee369dad82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_83495402-37f8-4bf1-8548-c9d5a98da716" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6930a4d6-4a32-4291-bc34-7aee369dad82" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_83495402-37f8-4bf1-8548-c9d5a98da716" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_8f24114b-3d0d-4673-a36d-49ca79c12830" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_8f24114b-3d0d-4673-a36d-49ca79c12830" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_de4529e1-6444-4de4-a73c-e4ece70cb0cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8f24114b-3d0d-4673-a36d-49ca79c12830" xlink:to="loc_us-gaap_EquityComponentDomain_de4529e1-6444-4de4-a73c-e4ece70cb0cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanMember_5bb36e58-4533-4762-943b-36e1fbd7c87b" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_de4529e1-6444-4de4-a73c-e4ece70cb0cf" xlink:to="loc_rock_ManagementStockPurchasePlanMember_5bb36e58-4533-4762-943b-36e1fbd7c87b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6ab23617-ea54-4f8f-9ef5-44c2aea839ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_3fdb2dd1-d336-4c9f-b1c7-717b7c345cf4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_3fdb2dd1-d336-4c9f-b1c7-717b7c345cf4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_560551ab-6a08-415f-9535-8d751bcf7969" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_560551ab-6a08-415f-9535-8d751bcf7969" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid_4daacc24-c522-4b32-8f50-5df9d002b5d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid_4daacc24-c522-4b32-8f50-5df9d002b5d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ManagementStockPurchasePlanCompensationExpense_ac3e354b-204d-4303-9d2c-6c302dbb5722" xlink:href="rock-20221231.xsd#rock_ManagementStockPurchasePlanCompensationExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_45ffca4d-09ac-424f-8a63-83a0d68695e7" xlink:to="loc_rock_ManagementStockPurchasePlanCompensationExpense_ac3e354b-204d-4303-9d2c-6c302dbb5722" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#FairValueMeasurementsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_428f5df2-0d72-49e3-9e69-2551b5d9f07f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfExtinguishmentOfDebtTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_428f5df2-0d72-49e3-9e69-2551b5d9f07f" xlink:to="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_60853d9a-6931-43d0-a023-b7d08935959f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:to="loc_us-gaap_CreditFacilityAxis_60853d9a-6931-43d0-a023-b7d08935959f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_c5fd0a6f-fcc2-413c-8f23-021946ccbb89" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_60853d9a-6931-43d0-a023-b7d08935959f" xlink:to="loc_us-gaap_CreditFacilityDomain_c5fd0a6f-fcc2-413c-8f23-021946ccbb89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_b5af7fc0-54e6-4378-a1de-08411d6e0152" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_c5fd0a6f-fcc2-413c-8f23-021946ccbb89" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_b5af7fc0-54e6-4378-a1de-08411d6e0152" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_a40c0fc9-e286-4650-93da-58dc71f0dbb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:to="loc_us-gaap_DebtInstrumentAxis_a40c0fc9-e286-4650-93da-58dc71f0dbb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_063ba03e-56ef-4428-a4ef-200e0279f3a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_a40c0fc9-e286-4650-93da-58dc71f0dbb5" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_063ba03e-56ef-4428-a4ef-200e0279f3a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SeniorCreditAgreementMember_00f10abb-f22a-44cd-94e4-ae9e47dc460f" xlink:href="rock-20221231.xsd#rock_SeniorCreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_063ba03e-56ef-4428-a4ef-200e0279f3a4" xlink:to="loc_rock_SeniorCreditAgreementMember_00f10abb-f22a-44cd-94e4-ae9e47dc460f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ExtinguishmentOfDebtLineItems_cb93d480-983a-44b8-b91e-2767bee75920" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ExtinguishmentOfDebtLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfExtinguishmentOfDebtTable_07b15073-fd05-4f78-87d2-2d8fda0e7360" xlink:to="loc_us-gaap_ExtinguishmentOfDebtLineItems_cb93d480-983a-44b8-b91e-2767bee75920" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_37842c5f-06c0-43d2-b5df-8f110024c6d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ExtinguishmentOfDebtLineItems_cb93d480-983a-44b8-b91e-2767bee75920" xlink:to="loc_us-gaap_LongTermDebt_37842c5f-06c0-43d2-b5df-8f110024c6d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsScheduleofDisposalGroupDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_b7dec67b-fa7a-4b49-9557-6e6c55b04a3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_b7dec67b-fa7a-4b49-9557-6e6c55b04a3e" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_b7a7f924-4a95-4e17-ade0-5594dfd49106" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_b7a7f924-4a95-4e17-ade0-5594dfd49106" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_15ce24c4-db2a-400f-83d4-1f6d4c2fda1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_b7a7f924-4a95-4e17-ade0-5594dfd49106" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_15ce24c4-db2a-400f-83d4-1f6d4c2fda1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_f1c04efa-5eb5-44af-9298-c39287d4dffd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_15ce24c4-db2a-400f-83d4-1f6d4c2fda1d" xlink:to="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_f1c04efa-5eb5-44af-9298-c39287d4dffd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_f85e5421-4f87-4c6b-86bb-5ba9085412a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_f85e5421-4f87-4c6b-86bb-5ba9085412a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e07a610b-f695-45f9-afec-2dba7e84fe08" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_f85e5421-4f87-4c6b-86bb-5ba9085412a0" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e07a610b-f695-45f9-afec-2dba7e84fe08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ProcessingBusinessMember_b3983ca1-93ba-452e-b666-20b05224c1f2" xlink:href="rock-20221231.xsd#rock_ProcessingBusinessMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e07a610b-f695-45f9-afec-2dba7e84fe08" xlink:to="loc_rock_ProcessingBusinessMember_b3983ca1-93ba-452e-b666-20b05224c1f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_54172704-01fd-411c-98da-a03b3ce23d90" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_ee925193-0b2b-415b-9898-754ec98d7838" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_ee925193-0b2b-415b-9898-754ec98d7838" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_3c995f78-4ba8-4cc3-b2dd-27c2f407ef1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_3c995f78-4ba8-4cc3-b2dd-27c2f407ef1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_1f0205ac-77fb-48e6-b47f-7e09a9b9eb60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_1f0205ac-77fb-48e6-b47f-7e09a9b9eb60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_61c407a1-3110-4188-b325-b85f47937a9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_61c407a1-3110-4188-b325-b85f47937a9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_531a9485-b9c2-45ff-b520-0e9facd7cce7" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset_531a9485-b9c2-45ff-b520-0e9facd7cce7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_cf05827d-4e38-4377-a01c-c48188adc6e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_cf05827d-4e38-4377-a01c-c48188adc6e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_a5a34d8d-acf1-4e8a-841a-9d16db14ae71" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_a5a34d8d-acf1-4e8a-841a-9d16db14ae71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_5c27087c-58af-4dd7-823f-929262efa7c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract_db118c71-8c30-41ff-812d-8549ac371690" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_5c27087c-58af-4dd7-823f-929262efa7c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_15d0619e-205f-491e-b798-7609c865d1d4" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_de4dfde7-0f24-4575-857a-3627446606d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent_de4dfde7-0f24-4575-857a-3627446606d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_f0952933-37af-49dd-bebd-4efde1c64b13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent_f0952933-37af-49dd-bebd-4efde1c64b13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_c32a5a7a-c53b-4fee-a450-6bd9c2d08d2f" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_c32a5a7a-c53b-4fee-a450-6bd9c2d08d2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_30be1ab5-cb18-4f25-b699-420a9f60bc23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract_a86c4787-035c-47cc-b0ad-b495939dc215" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_30be1ab5-cb18-4f25-b699-420a9f60bc23" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_7e1d7978-ad18-4343-af44-a88083dcb0e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_7e1d7978-ad18-4343-af44-a88083dcb0e8" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_b93b2422-b418-4719-bea5-0ef10ee6d52b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_b93b2422-b418-4719-bea5-0ef10ee6d52b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_901d01b3-573e-4ec9-af3d-8b164b1d83d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_b93b2422-b418-4719-bea5-0ef10ee6d52b" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_901d01b3-573e-4ec9-af3d-8b164b1d83d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ProcessingBusinessMember_efba700e-77cf-40f5-9fc8-5a7142612881" xlink:href="rock-20221231.xsd#rock_ProcessingBusinessMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_901d01b3-573e-4ec9-af3d-8b164b1d83d5" xlink:to="loc_rock_ProcessingBusinessMember_efba700e-77cf-40f5-9fc8-5a7142612881" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_41f4ebc1-9003-4359-b2cd-6f6456633a67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_41f4ebc1-9003-4359-b2cd-6f6456633a67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_b827de67-ce84-4094-aa4a-4393ca0c660f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_41f4ebc1-9003-4359-b2cd-6f6456633a67" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_b827de67-ce84-4094-aa4a-4393ca0c660f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_68bf39ec-1f8f-478c-a79e-41c28c4e11b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_b827de67-ce84-4094-aa4a-4393ca0c660f" xlink:to="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_68bf39ec-1f8f-478c-a79e-41c28c4e11b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_fed72d30-2a56-4de6-9b6b-254bfb5887ed" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_a8571ca8-d2e7-4e2a-b98e-4bd14fb61c69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_a8571ca8-d2e7-4e2a-b98e-4bd14fb61c69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_069cefde-abb9-421f-9c66-c964586d0f89" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_69aa0e17-1972-4865-b7ad-9d943399ab97" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_069cefde-abb9-421f-9c66-c964586d0f89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_4f76df33-444a-4dd3-a110-d1a02715d63a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_4f76df33-444a-4dd3-a110-d1a02715d63a" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_f2b0cb70-2d1b-4ae9-8297-41bc2f75cd54" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_9c92ca8d-32bb-4d6e-8fb1-1b52eb6a7f36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_9c92ca8d-32bb-4d6e-8fb1-1b52eb6a7f36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_e38cc89b-c5d4-48d6-a3f8-fefa01f9d81d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_ea9313ab-a65c-45dc-83ee-92214b3f3b6e" xlink:to="loc_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_e38cc89b-c5d4-48d6-a3f8-fefa01f9d81d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_dbdd7f71-872a-4aba-97e9-dc19a5bc5c49" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndustrialBusinessSegmentMember_7c073f03-ae24-41fb-9f1a-7923a0efd98b" xlink:href="rock-20221231.xsd#rock_IndustrialBusinessSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:to="loc_rock_IndustrialBusinessSegmentMember_7c073f03-ae24-41fb-9f1a-7923a0efd98b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApartmentTourApplicationBusinessMember_6619710a-2c28-4918-8210-6760e07dd8fb" xlink:href="rock-20221231.xsd#rock_ApartmentTourApplicationBusinessMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:to="loc_rock_ApartmentTourApplicationBusinessMember_6619710a-2c28-4918-8210-6760e07dd8fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ProcessingBusinessMember_d0c8d30c-a873-42ac-8ec1-ea48e509f6b4" xlink:href="rock-20221231.xsd#rock_ProcessingBusinessMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_3e94d088-15f1-40ac-9af3-a7e6e6110a76" xlink:to="loc_rock_ProcessingBusinessMember_d0c8d30c-a873-42ac-8ec1-ea48e509f6b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_60b76ecb-0b53-4c6b-8a6f-7e641173bd17" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_b82f2464-7c59-4654-bc57-9165072a0596" xlink:href="rock-20221231.xsd#rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_b82f2464-7c59-4654-bc57-9165072a0596" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_3fd1b41e-a2bd-4237-a027-b21623545515" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_3fd1b41e-a2bd-4237-a027-b21623545515" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1_289f0dd4-4214-4bcb-8578-74b00590501e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1_289f0dd4-4214-4bcb-8578-74b00590501e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax_613237a4-bf44-42bb-95a4-ded6e46aaff3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax_613237a4-bf44-42bb-95a4-ded6e46aaff3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_e654790c-5d35-4714-a8ba-c4e4374024f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_e654790c-5d35-4714-a8ba-c4e4374024f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_061cc739-9dbc-44a6-841e-0618a9d38e5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_3b069669-296d-4fa9-9aff-a1e9bc938a5c" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_061cc739-9dbc-44a6-841e-0618a9d38e5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_96b7936f-9bf5-4876-aeed-bdf287ccafa8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_96b7936f-9bf5-4876-aeed-bdf287ccafa8" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_eecf70a1-0f76-405d-99f8-948d23e4b0ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_eecf70a1-0f76-405d-99f8-948d23e4b0ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_889e4a8e-3f1b-46f3-a3f5-55c5381c951d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_eecf70a1-0f76-405d-99f8-948d23e4b0ec" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_889e4a8e-3f1b-46f3-a3f5-55c5381c951d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_8985f5bb-e518-4e16-9899-84cffb3f5572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_889e4a8e-3f1b-46f3-a3f5-55c5381c951d" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_8985f5bb-e518-4e16-9899-84cffb3f5572" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_e3b9248d-86ab-4665-9013-18c71dc8f262" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_e3b9248d-86ab-4665-9013-18c71dc8f262" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_21c62b5e-d650-4205-8c89-f875a63a9933" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_e3b9248d-86ab-4665-9013-18c71dc8f262" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_21c62b5e-d650-4205-8c89-f875a63a9933" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IndustrialBusinessSegmentMember_7402f6dc-58a4-4bec-b6c7-9aa1ef727200" xlink:href="rock-20221231.xsd#rock_IndustrialBusinessSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_21c62b5e-d650-4205-8c89-f875a63a9933" xlink:to="loc_rock_IndustrialBusinessSegmentMember_7402f6dc-58a4-4bec-b6c7-9aa1ef727200" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_af58999f-f806-4d9b-b647-7354e861d14d" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ec357813-52e1-4711-8cc8-813b46fc80d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ec357813-52e1-4711-8cc8-813b46fc80d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_25a209df-5e62-4f83-b241-f31dbc094bcf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_25a209df-5e62-4f83-b241-f31dbc094bcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_9d18d27a-654c-4cdd-a2ab-aef7e3f4ab30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_9d18d27a-654c-4cdd-a2ab-aef7e3f4ab30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_44472ae7-73a7-496e-ab54-b45e6389631b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_44472ae7-73a7-496e-ab54-b45e6389631b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_fb4088da-e272-4021-aeee-b1ba10e0aaf5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_52788f1d-a803-4562-a73b-f2ebd6b22c51" xlink:to="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_fb4088da-e272-4021-aeee-b1ba10e0aaf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_ce517717-aac4-4c42-972c-e9bcc8c464d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_d2ccfbde-7719-4ebf-97bc-84af6f24e8b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_ce517717-aac4-4c42-972c-e9bcc8c464d3" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_d2ccfbde-7719-4ebf-97bc-84af6f24e8b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_6f1f1a57-dd09-4a81-a64c-9040da2c5903" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_d2ccfbde-7719-4ebf-97bc-84af6f24e8b8" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_6f1f1a57-dd09-4a81-a64c-9040da2c5903" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_419a79be-6328-44a5-bfa2-4c081fa42a64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_6f1f1a57-dd09-4a81-a64c-9040da2c5903" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_419a79be-6328-44a5-bfa2-4c081fa42a64" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ApartmentTourApplicationBusinessMember_04d9614d-dba4-4040-ab7b-fa906213ab5f" xlink:href="rock-20221231.xsd#rock_ApartmentTourApplicationBusinessMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_419a79be-6328-44a5-bfa2-4c081fa42a64" xlink:to="loc_rock_ApartmentTourApplicationBusinessMember_04d9614d-dba4-4040-ab7b-fa906213ab5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_d2ccfbde-7719-4ebf-97bc-84af6f24e8b8" xlink:to="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed_f3625c58-0ead-4745-918c-347440ef1c4d" xlink:href="rock-20221231.xsd#rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:to="loc_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed_f3625c58-0ead-4745-918c-347440ef1c4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_a5d88eeb-0103-4dc3-856b-47819db4e8f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_a5d88eeb-0103-4dc3-856b-47819db4e8f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfBusiness_cf09f20b-438f-4282-9924-e344d281a572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfBusiness"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_95f32375-5057-4a2f-b95a-5495657eaed6" xlink:to="loc_us-gaap_GainLossOnSaleOfBusiness_cf09f20b-438f-4282-9924-e344d281a572" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_6820593d-8449-449c-8bd9-d2827036088f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_6820593d-8449-449c-8bd9-d2827036088f" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_e3674688-fd36-48f8-bfd3-77d1022ca216" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_e3674688-fd36-48f8-bfd3-77d1022ca216" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_e3674688-fd36-48f8-bfd3-77d1022ca216" xlink:to="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_daee118f-d185-4123-88a4-8aa2aa78bf96" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_RenewablesMember_daee118f-d185-4123-88a4-8aa2aa78bf96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_8bfff47f-7b11-4acd-a612-ea7f6b7993f2" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_ResidentialMember_8bfff47f-7b11-4acd-a612-ea7f6b7993f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_97cbfca1-d745-436b-b4a2-da9d5c191a00" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_InfrastructureMember_97cbfca1-d745-436b-b4a2-da9d5c191a00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_63ac6ba1-4a98-4516-bb2c-46631a65f19e" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_74509ceb-bc7f-4097-9280-7c609de49c29" xlink:to="loc_rock_AgtechMember_63ac6ba1-4a98-4516-bb2c-46631a65f19e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_8508295e-6a5d-4478-b636-599d73acf13a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:to="loc_srt_ConsolidationItemsAxis_8508295e-6a5d-4478-b636-599d73acf13a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_8508295e-6a5d-4478-b636-599d73acf13a" xlink:to="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_073b3654-2835-4665-b4cb-db7192017928" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:to="loc_us-gaap_OperatingSegmentsMember_073b3654-2835-4665-b4cb-db7192017928" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_4d82e405-11fd-4e33-8513-d36299e44a67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_1d77e6cf-9749-4ba1-b092-f7757c23b5be" xlink:to="loc_us-gaap_CorporateNonSegmentMember_4d82e405-11fd-4e33-8513-d36299e44a67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_eae9c587-df87-44f5-a520-d5ecf5160488" xlink:to="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessExitCosts1_81346a50-3c31-4a5c-b4c1-9fe6e711c66a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessExitCosts1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:to="loc_us-gaap_BusinessExitCosts1_81346a50-3c31-4a5c-b4c1-9fe6e711c66a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringSettlementAndImpairmentProvisions_ca66077c-4031-4be4-b0c3-e59c79879906" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringSettlementAndImpairmentProvisions"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:to="loc_us-gaap_RestructuringSettlementAndImpairmentProvisions_ca66077c-4031-4be4-b0c3-e59c79879906" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCharges_141b7baa-6be6-4548-9e57-fac2553e200f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCharges"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_a04e7d11-e0d3-42b2-8c14-17bac2012684" xlink:to="loc_us-gaap_RestructuringCharges_141b7baa-6be6-4548-9e57-fac2553e200f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_9f2ea734-5bc9-42b0-9fd1-be5c6ce933f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_9b4aa800-990d-42c0-94cf-dbf23989f0fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_9f2ea734-5bc9-42b0-9fd1-be5c6ce933f7" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_9b4aa800-990d-42c0-94cf-dbf23989f0fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis_0440ca45-e139-4663-b9da-6e4f4c99dd87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_9b4aa800-990d-42c0-94cf-dbf23989f0fd" xlink:to="loc_us-gaap_RestructuringCostAndReserveAxis_0440ca45-e139-4663-b9da-6e4f4c99dd87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_0440ca45-e139-4663-b9da-6e4f4c99dd87" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_bb5fa0e4-65b1-4488-9e6f-fecd310b15e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:to="loc_us-gaap_CostOfSalesMember_bb5fa0e4-65b1-4488-9e6f-fecd310b15e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_SellingGeneralAndAdministrativeExpenseMember_17289d1e-45df-4460-8db9-b26cfc3bad15" xlink:href="rock-20221231.xsd#rock_SellingGeneralAndAdministrativeExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_67435b8d-e647-478e-81c3-dc4bce423bf0" xlink:to="loc_rock_SellingGeneralAndAdministrativeExpenseMember_17289d1e-45df-4460-8db9-b26cfc3bad15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_4c9e592a-78ad-4464-8ee0-50c8e7d258d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_9b4aa800-990d-42c0-94cf-dbf23989f0fd" xlink:to="loc_us-gaap_RestructuringCostAndReserveLineItems_4c9e592a-78ad-4464-8ee0-50c8e7d258d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCharges_fbf000ae-40dd-429d-b138-e30721f08ac8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCharges"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4c9e592a-78ad-4464-8ee0-50c8e7d258d9" xlink:to="loc_us-gaap_RestructuringCharges_fbf000ae-40dd-429d-b138-e30721f08ac8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_4f06335f-e10e-4851-8aaf-325ba00ea824" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveRollForward_2a7f56e9-a1a1-4c21-9a79-e9bbfbe0f24f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserveRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_4f06335f-e10e-4851-8aaf-325ba00ea824" xlink:to="loc_us-gaap_RestructuringReserveRollForward_2a7f56e9-a1a1-4c21-9a79-e9bbfbe0f24f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_c5f6b20b-b6fa-4e64-b788-4eb014331300" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserve"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_2a7f56e9-a1a1-4c21-9a79-e9bbfbe0f24f" xlink:to="loc_us-gaap_RestructuringReserve_c5f6b20b-b6fa-4e64-b788-4eb014331300" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessExitCosts1_0c00fa22-18bf-4632-ac22-f38ab43c33f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessExitCosts1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_2a7f56e9-a1a1-4c21-9a79-e9bbfbe0f24f" xlink:to="loc_us-gaap_BusinessExitCosts1_0c00fa22-18bf-4632-ac22-f38ab43c33f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRestructuring_788c9496-1793-4ea9-9c0d-58eb7dff597a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRestructuring"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_2a7f56e9-a1a1-4c21-9a79-e9bbfbe0f24f" xlink:to="loc_us-gaap_PaymentsForRestructuring_788c9496-1793-4ea9-9c0d-58eb7dff597a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_0ec1ce2b-2536-4440-a8e9-f04e1a23e49b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserve"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_2a7f56e9-a1a1-4c21-9a79-e9bbfbe0f24f" xlink:to="loc_us-gaap_RestructuringReserve_0ec1ce2b-2536-4440-a8e9-f04e1a23e49b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_b3342a93-b0f2-4eae-8fb5-8693cc8a0057" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_42bdbf4a-2f5c-432b-8439-c9ac9c59c3c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_b3342a93-b0f2-4eae-8fb5-8693cc8a0057" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_42bdbf4a-2f5c-432b-8439-c9ac9c59c3c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_40138232-953a-4550-9357-81d6075039e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_b3342a93-b0f2-4eae-8fb5-8693cc8a0057" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_40138232-953a-4550-9357-81d6075039e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c6b3bd45-ad9f-4e68-b81b-494254aff730" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_b3342a93-b0f2-4eae-8fb5-8693cc8a0057" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c6b3bd45-ad9f-4e68-b81b-494254aff730" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_519b22a2-5a4e-4ef0-bd09-3d0fcdf1b2d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyTable_37df683c-d83e-4bf2-891a-4a5c517f342b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxContingencyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_519b22a2-5a4e-4ef0-bd09-3d0fcdf1b2d6" xlink:to="loc_us-gaap_IncomeTaxContingencyTable_37df683c-d83e-4bf2-891a-4a5c517f342b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_7a699f6b-4d05-4076-b9b5-b40a39f287ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_37df683c-d83e-4bf2-891a-4a5c517f342b" xlink:to="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_7a699f6b-4d05-4076-b9b5-b40a39f287ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentOperatingActivitiesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_7a699f6b-4d05-4076-b9b5-b40a39f287ac" xlink:to="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentContinuingOperationsMember_3942a779-9b9c-4a0f-84f8-f363507504ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentContinuingOperationsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:to="loc_us-gaap_SegmentContinuingOperationsMember_3942a779-9b9c-4a0f-84f8-f363507504ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_12d084aa-b63b-40ef-9f84-b7e893a2043a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentOperatingActivitiesDomain_9015b3bf-f5a4-462a-9acf-3bb9e00d9e77" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_12d084aa-b63b-40ef-9f84-b7e893a2043a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxContingencyLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_37df683c-d83e-4bf2-891a-4a5c517f342b" xlink:to="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1b8b0cc4-789a-4bc1-b75a-a3595e0f2ad8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1b8b0cc4-789a-4bc1-b75a-a3595e0f2ad8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_9ad35185-6445-48fe-9b61-a3970a14f452" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_9ad35185-6445-48fe-9b61-a3970a14f452" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_aa58369c-3fba-46ca-8994-c0946a44daf9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_aa58369c-3fba-46ca-8994-c0946a44daf9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_b4c3d406-4303-4b7b-8681-d4e30273f0db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_b4c3d406-4303-4b7b-8681-d4e30273f0db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_543310d8-3882-4888-8020-cf0cec286e68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_1cbcd558-6e79-42ea-bd1b-a1f6a00bf50e" xlink:to="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_543310d8-3882-4888-8020-cf0cec286e68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_f051f7cd-f595-429a-b53d-6b69c01a60a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_f051f7cd-f595-429a-b53d-6b69c01a60a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_b6bb8c75-5563-44ca-8d82-0ca8a9ae78d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_b6bb8c75-5563-44ca-8d82-0ca8a9ae78d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_418fcfb6-9a5a-414f-92b1-1e40421365d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_418fcfb6-9a5a-414f-92b1-1e40421365d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_c89dfcdb-3fb6-42d5-9e07-d7d8f6252602" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_2ebfa5fe-4c88-4859-845f-87a6ca336d06" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_c89dfcdb-3fb6-42d5-9e07-d7d8f6252602" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_47892310-09d6-4aaa-b849-ba96e87d3777" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_ab13512d-cedd-431f-b5ea-2d7275ff3a02" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_47892310-09d6-4aaa-b849-ba96e87d3777" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_f7fdf2b1-4925-4949-9a66-4143f1c6d0bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_f7fdf2b1-4925-4949-9a66-4143f1c6d0bd" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_ca6387c2-d9b6-4dd2-a6ac-19d406db0b07" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_ca6387c2-d9b6-4dd2-a6ac-19d406db0b07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_6afcf8d6-4017-4027-923c-e4ee3a5c0d70" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_6afcf8d6-4017-4027-923c-e4ee3a5c0d70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_172f163b-a63b-4302-b7b3-f682726b19f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCredits"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_172f163b-a63b-4302-b7b3-f682726b19f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_83b94d96-8767-4c6a-b915-e32b9bca8eaf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_83b94d96-8767-4c6a-b915-e32b9bca8eaf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount_5ce415e1-9e78-422b-9d04-c58b7913f78f" xlink:href="rock-20221231.xsd#rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount_5ce415e1-9e78-422b-9d04-c58b7913f78f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_e0eb2b48-0ebe-4076-bc55-de9e61721571" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_e0eb2b48-0ebe-4076-bc55-de9e61721571" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_91353688-1a60-4e2e-aeca-a8349b74ac11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_91353688-1a60-4e2e-aeca-a8349b74ac11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_5a2ce9d3-be1e-41a7-860c-54749ba6bc22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_dd68fc9e-8956-463a-b4e5-43f469dead1e" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_5a2ce9d3-be1e-41a7-860c-54749ba6bc22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_f7fdf2b1-4925-4949-9a66-4143f1c6d0bd" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_4dad62e3-f73e-4049-bd66-cdefa03b79ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_4dad62e3-f73e-4049-bd66-cdefa03b79ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_24b10e09-5eb9-4300-a273-b80a1906f0af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_24b10e09-5eb9-4300-a273-b80a1906f0af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1e40817e-f412-4b23-9934-49e17d665d59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1e40817e-f412-4b23-9934-49e17d665d59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_ba04524b-b5fc-49a9-abd5-a712c96c78e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_ba04524b-b5fc-49a9-abd5-a712c96c78e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent_4e358ee6-bf35-428c-81c0-917fee985c84" xlink:href="rock-20221231.xsd#rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent_4e358ee6-bf35-428c-81c0-917fee985c84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_2a889de2-c946-4a5d-802b-c1e74daf161b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_2a889de2-c946-4a5d-802b-c1e74daf161b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_712af896-b039-413c-9559-bc30e2b4b6aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_712af896-b039-413c-9559-bc30e2b4b6aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_86620ee8-e474-4cc0-aec7-b410c63a3db5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_fce921f7-f941-47ab-8a74-b34522aea80e" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_86620ee8-e474-4cc0-aec7-b410c63a3db5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_0d512330-9742-4f98-909a-bd069bd3d0ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_0d512330-9742-4f98-909a-bd069bd3d0ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill_8d067560-e8dc-44ba-ae2a-c580877fd8f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill_8d067560-e8dc-44ba-ae2a-c580877fd8f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_a1c94a93-9c0d-4a3d-b1dd-b3d783d0d561" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_a1c94a93-9c0d-4a3d-b1dd-b3d783d0d561" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_6f9e697c-95d4-49f3-805e-76050fa646eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_6f9e697c-95d4-49f3-805e-76050fa646eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_6a7cd828-d076-4d4a-930d-66f41aaed1b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_6a7cd828-d076-4d4a-930d-66f41aaed1b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_809424b9-c009-4760-ae21-62aaaeec557a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsCapitalLossCarryforwards"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_809424b9-c009-4760-ae21-62aaaeec557a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_9751f99e-c620-4715-a61e-83aa4cc43e65" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_9751f99e-c620-4715-a61e-83aa4cc43e65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness_eb5db19c-0ee3-4ef6-9328-5281d1e9335d" xlink:href="rock-20221231.xsd#rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness_eb5db19c-0ee3-4ef6-9328-5281d1e9335d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_4e189b3a-1787-41dd-9dff-133eaf4ebf0a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_4e189b3a-1787-41dd-9dff-133eaf4ebf0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_c571e97d-6355-4346-b506-7868cfadee20" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_c571e97d-6355-4346-b506-7868cfadee20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_6fdf6705-8d21-4175-95d1-c197fb131b5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_6fdf6705-8d21-4175-95d1-c197fb131b5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_1e1e28cf-9d08-44ed-8291-7939ca981843" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_1e1e28cf-9d08-44ed-8291-7939ca981843" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_cb36f495-8f7d-45fb-a953-e804f044de44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_cb36f495-8f7d-45fb-a953-e804f044de44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_3a5d61e9-37fe-41bd-93c5-f16b2de4430c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ab61e2b8-88e0-423c-aa37-4ed8a330737c" xlink:to="loc_us-gaap_DeferredTaxLiabilities_3a5d61e9-37fe-41bd-93c5-f16b2de4430c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_f79e1fe9-c605-46c4-90dd-1a8d0e8713bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_f79e1fe9-c605-46c4-90dd-1a8d0e8713bc" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_f01453f0-d561-4fa7-a4d4-9e57d49e1dd9" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_6f6650d7-42e4-4941-88ab-72ef6a37edd4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:to="loc_us-gaap_DomesticCountryMember_6f6650d7-42e4-4941-88ab-72ef6a37edd4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_02c867e6-22e8-40d3-8498-11a0f4ec7202" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_02c867e6-22e8-40d3-8498-11a0f4ec7202" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember_93419334-1557-45df-87fe-ac2c156373f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCountryMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_2260a37b-e605-4802-9395-9e84af3ec988" xlink:to="loc_us-gaap_ForeignCountryMember_93419334-1557-45df-87fe-ac2c156373f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:to="loc_srt_RangeAxis_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_45bcad85-de56-4f7b-aeea-0e3e5bc6bda9" xlink:to="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_e7aac278-09f4-44bb-9a10-8a042d903be9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:to="loc_srt_MinimumMember_e7aac278-09f4-44bb-9a10-8a042d903be9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_585546d5-e0eb-4b88-b33a-5f709ec90b6a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_5f8127c9-6d9b-49c9-8964-eb8bcf21925b" xlink:to="loc_srt_MaximumMember_585546d5-e0eb-4b88-b33a-5f709ec90b6a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_799dd8aa-1771-42b4-904f-9acbb0ed25c5" xlink:to="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_75b5e845-b043-438a-9d75-e9f43bcef201" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_75b5e845-b043-438a-9d75-e9f43bcef201" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_4535f329-54ff-45f0-b09d-4fbd95be6f36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_OperatingLossCarryforwards_4535f329-54ff-45f0-b09d-4fbd95be6f36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_77a1cd13-4cf3-41e8-8930-79e8f7d6f3e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_77a1cd13-4cf3-41e8-8930-79e8f7d6f3e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings_9178059c-e90d-4372-bd9a-2c34371c7959" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings_9178059c-e90d-4372-bd9a-2c34371c7959" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_IncomeTaxStatueOfLimitationsExpirationPeriod_5ab2f28f-9160-419a-b5f3-b42e2e5c2610" xlink:href="rock-20221231.xsd#rock_IncomeTaxStatueOfLimitationsExpirationPeriod"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_IncomeTaxStatueOfLimitationsExpirationPeriod_5ab2f28f-9160-419a-b5f3-b42e2e5c2610" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CapitalLossCarryfoward_975ce8a0-571a-4f72-9e0d-214ff83c592f" xlink:href="rock-20221231.xsd#rock_CapitalLossCarryfoward"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_CapitalLossCarryfoward_975ce8a0-571a-4f72-9e0d-214ff83c592f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_CapitalLossCarryfowardAmendedReturns_5f93ea3e-50cc-4ef5-8253-ba21b35ed70a" xlink:href="rock-20221231.xsd#rock_CapitalLossCarryfowardAmendedReturns"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_CapitalLossCarryfowardAmendedReturns_5f93ea3e-50cc-4ef5-8253-ba21b35ed70a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_DeferredTaxAssetsCapitalLossCarryfowards_c208bc5a-928a-4440-a154-55f37b08096e" xlink:href="rock-20221231.xsd#rock_DeferredTaxAssetsCapitalLossCarryfowards"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_rock_DeferredTaxAssetsCapitalLossCarryfowards_c208bc5a-928a-4440-a154-55f37b08096e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_5edfdce6-ebbc-4a7a-9b0f-a057968333bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_918f46a6-6bb0-41d6-a997-2192a9ad4bc5" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_5edfdce6-ebbc-4a7a-9b0f-a057968333bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesSummaryofValuationAllowanceDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_ec73849d-4d02-41ea-aa78-2c22d985aef3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_e8c5451d-f7aa-4824-9446-6a7a7bd6d9b4" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ec73849d-4d02-41ea-aa78-2c22d985aef3" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_e8c5451d-f7aa-4824-9446-6a7a7bd6d9b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_f535b48e-0517-43d7-9167-01268e3277b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_e8c5451d-f7aa-4824-9446-6a7a7bd6d9b4" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_f535b48e-0517-43d7-9167-01268e3277b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_835b114f-a588-4798-99d0-8ea5d2acd837" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_f535b48e-0517-43d7-9167-01268e3277b7" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_835b114f-a588-4798-99d0-8ea5d2acd837" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember_3212a1d2-1789-4aaa-8b5d-70be7928738a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_835b114f-a588-4798-99d0-8ea5d2acd837" xlink:to="loc_us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember_3212a1d2-1789-4aaa-8b5d-70be7928738a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_f9381314-d4c3-4fba-a9ee-43f6addc841f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_e8c5451d-f7aa-4824-9446-6a7a7bd6d9b4" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_f9381314-d4c3-4fba-a9ee-43f6addc841f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MovementInValuationAllowancesAndReservesRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_f9381314-d4c3-4fba-a9ee-43f6addc841f" xlink:to="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_88eeba26-1da6-46f6-9ad7-5147968b72e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_88eeba26-1da6-46f6-9ad7-5147968b72e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_3c4d041c-d78c-499a-a9e9-6930ef6396cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_3c4d041c-d78c-499a-a9e9-6930ef6396cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_d6986671-4664-40c5-b791-35ffce978333" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDeductions"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_d6986671-4664-40c5-b791-35ffce978333" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedNetLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_df22ddf5-fc5c-4d8c-8b10-b31739631ba7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesAdjustments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_df22ddf5-fc5c-4d8c-8b10-b31739631ba7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation_2f560bf7-d4f2-4e03-9798-bb91239bb4f9" xlink:href="rock-20221231.xsd#rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation_2f560bf7-d4f2-4e03-9798-bb91239bb4f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_4a1b05e0-b9c3-4272-8a1f-cda0a487e018" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_b58c200a-5a5c-451a-9826-6afd7be0e267" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_4a1b05e0-b9c3-4272-8a1f-cda0a487e018" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_bd026186-2195-4646-b5bc-952751dcd530" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_9cca1f86-7d73-44ed-ac44-8002a426a680" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_bd026186-2195-4646-b5bc-952751dcd530" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_9cca1f86-7d73-44ed-ac44-8002a426a680" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EarningsperShareNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_83c8bd31-0061-4723-a775-cd4af54a9a99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_02260661-5b0a-41bb-a90f-ef97bf86f151" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_83c8bd31-0061-4723-a775-cd4af54a9a99" xlink:to="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_02260661-5b0a-41bb-a90f-ef97bf86f151" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_f2087035-4467-409a-ba62-27878ac0ff2f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_02260661-5b0a-41bb-a90f-ef97bf86f151" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_f2087035-4467-409a-ba62-27878ac0ff2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain_4ea5cb8d-f894-4858-9ac2-da61f6f2eaba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_f2087035-4467-409a-ba62-27878ac0ff2f" xlink:to="loc_us-gaap_AntidilutiveSecuritiesNameDomain_4ea5cb8d-f894-4858-9ac2-da61f6f2eaba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_c9ec2941-c956-4cd0-87cf-30454f2a33bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_4ea5cb8d-f894-4858-9ac2-da61f6f2eaba" xlink:to="loc_us-gaap_CommonStockMember_c9ec2941-c956-4cd0-87cf-30454f2a33bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_ba5f905d-8ffb-40c3-bf32-19542878c441" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_02260661-5b0a-41bb-a90f-ef97bf86f151" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_ba5f905d-8ffb-40c3-bf32-19542878c441" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_88712834-e55f-44d4-88c3-a8b4bb2df599" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_ba5f905d-8ffb-40c3-bf32-19542878c441" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_88712834-e55f-44d4-88c3-a8b4bb2df599" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_5a4b0b71-62c0-4ff7-a532-dede32f56016" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_18c64cb3-f06b-42af-be33-fb7dc19e0ef3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_5a4b0b71-62c0-4ff7-a532-dede32f56016" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_18c64cb3-f06b-42af-be33-fb7dc19e0ef3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_356a0aae-2fa7-4222-a103-88e1fef59926" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_5a4b0b71-62c0-4ff7-a532-dede32f56016" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_356a0aae-2fa7-4222-a103-88e1fef59926" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_2328dfe8-b3d4-4d03-acf0-32f8a176ec5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_5a4b0b71-62c0-4ff7-a532-dede32f56016" xlink:to="loc_us-gaap_NetIncomeLoss_2328dfe8-b3d4-4d03-acf0-32f8a176ec5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ac9e1a51-a883-4585-857c-b439b14f279d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_5a4b0b71-62c0-4ff7-a532-dede32f56016" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ac9e1a51-a883-4585-857c-b439b14f279d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_c461150c-9652-42e5-9ed8-e769468617b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_5a4b0b71-62c0-4ff7-a532-dede32f56016" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_c461150c-9652-42e5-9ed8-e769468617b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_cb9678a1-d195-4fba-a980-a94eeea2c642" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_5a4b0b71-62c0-4ff7-a532-dede32f56016" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_cb9678a1-d195-4fba-a980-a94eeea2c642" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/LeasesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_74d04c01-70f5-42bb-a183-99306d0c03d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_74d04c01-70f5-42bb-a183-99306d0c03d9" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_44e81e93-12be-493f-8e11-29fe3c10cf64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_44e81e93-12be-493f-8e11-29fe3c10cf64" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_642292c4-7100-45d4-9411-a0a53c1cc628" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_44e81e93-12be-493f-8e11-29fe3c10cf64" xlink:to="loc_us-gaap_EquityComponentDomain_642292c4-7100-45d4-9411-a0a53c1cc628" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_2c2b1236-c1b6-4c55-bf3b-16579c7c4ba1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_642292c4-7100-45d4-9411-a0a53c1cc628" xlink:to="loc_us-gaap_RetainedEarningsMember_2c2b1236-c1b6-4c55-bf3b-16579c7c4ba1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_fd86f341-dc18-4b0f-ae4c-bd4c44975316" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:to="loc_srt_RangeAxis_fd86f341-dc18-4b0f-ae4c-bd4c44975316" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_fd86f341-dc18-4b0f-ae4c-bd4c44975316" xlink:to="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_adeeba86-65f3-4111-8350-d7fe3c92f449" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:to="loc_srt_MinimumMember_adeeba86-65f3-4111-8350-d7fe3c92f449" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_fda5500e-aee8-48a2-9df1-e731c6073305" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_d2f9c063-084f-4542-bea5-5890769a0036" xlink:to="loc_srt_MaximumMember_fda5500e-aee8-48a2-9df1-e731c6073305" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_cb1abd26-a190-4e3f-b583-539d7cbee2a9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_cb1abd26-a190-4e3f-b583-539d7cbee2a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_90414a10-ba92-4edb-9203-946ec02baa2a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_cb1abd26-a190-4e3f-b583-539d7cbee2a9" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_90414a10-ba92-4edb-9203-946ec02baa2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_b4f4d098-adff-4c32-86bc-1963fc4cd60b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_90414a10-ba92-4edb-9203-946ec02baa2a" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_b4f4d098-adff-4c32-86bc-1963fc4cd60b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_f66637cd-69a6-49a7-8bac-31e19ca801d6" xlink:to="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_bc86cf18-1162-494a-aa48-4f1270e7712f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_bc86cf18-1162-494a-aa48-4f1270e7712f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_dfaeb3d7-e40f-451a-8d1d-eb4d28f66600" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7c4c00b6-34b9-4b61-a742-10e3f3071537" xlink:to="loc_us-gaap_StockholdersEquity_dfaeb3d7-e40f-451a-8d1d-eb4d28f66600" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesAssetsandLiabilitiesofLesseeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_2b61aed5-e467-4db6-9f62-232f9a55f249" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_e21a6071-c842-47e5-b76d-e2951525e4ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2b61aed5-e467-4db6-9f62-232f9a55f249" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_e21a6071-c842-47e5-b76d-e2951525e4ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_27e5e2ba-276a-4c68-9e7f-e1825401dd3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2b61aed5-e467-4db6-9f62-232f9a55f249" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_27e5e2ba-276a-4c68-9e7f-e1825401dd3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9a7a8df8-1510-4bee-aec6-f49a5dd65e8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2b61aed5-e467-4db6-9f62-232f9a55f249" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9a7a8df8-1510-4bee-aec6-f49a5dd65e8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_c25cc0e4-6854-4e0e-91fb-b9e93c42a292" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2b61aed5-e467-4db6-9f62-232f9a55f249" xlink:to="loc_us-gaap_OperatingLeaseLiability_c25cc0e4-6854-4e0e-91fb-b9e93c42a292" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesScheduleofLeaseCostandAssumptionsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_1e0b07c7-77ca-4cc1-9702-e21add056c63" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:to="loc_us-gaap_OperatingLeaseCost_1e0b07c7-77ca-4cc1-9702-e21add056c63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_1d56114a-f848-4066-8be9-125da6ffaf93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:to="loc_us-gaap_ShortTermLeaseCost_1d56114a-f848-4066-8be9-125da6ffaf93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_2fb5efce-4443-4292-aa0e-e03bf178bf75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:to="loc_us-gaap_LeaseCost_2fb5efce-4443-4292-aa0e-e03bf178bf75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_57029a4d-2ccf-4144-8bcc-aff11acf8a5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:to="loc_us-gaap_OperatingLeasePayments_57029a4d-2ccf-4144-8bcc-aff11acf8a5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_65fd606c-672e-4ef9-9e4c-fe8818d126ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:to="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_65fd606c-672e-4ef9-9e4c-fe8818d126ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2291b3e4-4ab2-4e95-8329-fa450b624d93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2291b3e4-4ab2-4e95-8329-fa450b624d93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_c7b1461d-5674-4f53-9863-6be0ea452a33" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ec23eb90-37ce-4dae-a9e0-682364ea6657" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_c7b1461d-5674-4f53-9863-6be0ea452a33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#LeasesMaturityofLeasePaymentsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_8d6bd43d-a356-4fc2-b7fa-96201e9d4caa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_8d6bd43d-a356-4fc2-b7fa-96201e9d4caa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_251da8d2-f4f8-4507-b424-ef264d623c0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_251da8d2-f4f8-4507-b424-ef264d623c0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_1ba772ae-2ae1-43e3-8b1c-13248c7a2f3d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_1ba772ae-2ae1-43e3-8b1c-13248c7a2f3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_5a9079d8-2882-4851-b8b0-508417e2b9de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_5a9079d8-2882-4851-b8b0-508417e2b9de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_1784ff14-b698-4d94-b267-0bd511856832" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_1784ff14-b698-4d94-b267-0bd511856832" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_9677693a-ff62-409b-95cb-69394389c42a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_9677693a-ff62-409b-95cb-69394389c42a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3cd3935f-fb71-4da4-826f-f388e40b9320" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3cd3935f-fb71-4da4-826f-f388e40b9320" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_2485c858-c798-4639-afb7-6f17ef523078" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_2485c858-c798-4639-afb7-6f17ef523078" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_d87adeff-5877-406a-a441-e816ede78d4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d61db758-ce8d-426a-9c6b-09d596140d5f" xlink:to="loc_us-gaap_OperatingLeaseLiability_d87adeff-5877-406a-a441-e816ede78d4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationNarrativeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationRevenueAbstract_67be3c2a-bf0d-41e8-a961-8c1613d13264" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationRevenueAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_f40fe217-3dbe-4e9c-9a03-2d53af94543a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract_67be3c2a-bf0d-41e8-a961-8c1613d13264" xlink:to="loc_us-gaap_NumberOfReportableSegments_f40fe217-3dbe-4e9c-9a03-2d53af94543a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationRevenueAbstract_52963e56-7f3d-426e-a50c-1b5cc166c658" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationRevenueAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract_52963e56-7f3d-426e-a50c-1b5cc166c658" xlink:to="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_322691b9-197d-4ae6-abed-b99a2bd695ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_322691b9-197d-4ae6-abed-b99a2bd695ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_322691b9-197d-4ae6-abed-b99a2bd695ee" xlink:to="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_5b31fe7d-1550-4ef6-9f0f-33d74c025f9a" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_RenewablesMember_5b31fe7d-1550-4ef6-9f0f-33d74c025f9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_28e196da-bf02-412c-b416-a6a1e5b125de" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_ResidentialMember_28e196da-bf02-412c-b416-a6a1e5b125de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_f8318b6d-9669-4754-8a26-fa325d6c737f" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_AgtechMember_f8318b6d-9669-4754-8a26-fa325d6c737f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_272ddf49-b9e8-46c2-8cf8-0c6655ef3069" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_44e32cb9-297f-4b29-8f98-eb31d9eed58e" xlink:to="loc_rock_InfrastructureMember_272ddf49-b9e8-46c2-8cf8-0c6655ef3069" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:to="loc_srt_ConsolidationItemsAxis_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_2f9f5b2b-99cf-400c-a9de-7a55ca5fa077" xlink:to="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_f1b4c289-b11e-4796-8192-e53ecc222852" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:to="loc_us-gaap_OperatingSegmentsMember_f1b4c289-b11e-4796-8192-e53ecc222852" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_cea2b0db-62fc-4e43-8304-215e5b897596" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_799a2471-16d8-4ca9-abba-28f4f8c0a765" xlink:to="loc_us-gaap_CorporateNonSegmentMember_cea2b0db-62fc-4e43-8304-215e5b897596" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_35a152fa-e551-4c10-8eec-f262655c9b2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:to="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_35a152fa-e551-4c10-8eec-f262655c9b2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentOperatingActivitiesDomain_6a0e1d46-0c59-45b2-b905-69f8895c7ae6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentOperatingActivitiesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOperatingActivitiesSegmentAxis_35a152fa-e551-4c10-8eec-f262655c9b2a" xlink:to="loc_us-gaap_SegmentOperatingActivitiesDomain_6a0e1d46-0c59-45b2-b905-69f8895c7ae6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_89ce5b92-a927-4504-8e08-df982b62043f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentOperatingActivitiesDomain_6a0e1d46-0c59-45b2-b905-69f8895c7ae6" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_89ce5b92-a927-4504-8e08-df982b62043f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable_04879531-ea47-443e-a6cb-10c753e0f09e" xlink:to="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_76725495-c4d5-467e-b7c8-d77f94cdb3fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_Revenues_76725495-c4d5-467e-b7c8-d77f94cdb3fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_45e93914-9a04-4414-b815-4fdf6281f24f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_OperatingIncomeLoss_45e93914-9a04-4414-b815-4fdf6281f24f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_6cb92ddc-dfe8-4a7e-8db3-59add737d20c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_6cb92ddc-dfe8-4a7e-8db3-59add737d20c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_0814c8e0-0d59-4623-95c4-78cecae4c5d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_Assets_0814c8e0-0d59-4623-95c4-78cecae4c5d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e3318f63-e5a3-499d-b095-df4010061599" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems_b88d7383-9bd9-4b27-86c7-aa47a9f934fc" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e3318f63-e5a3-499d-b095-df4010061599" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationNetSalesbyContractTypeDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_7e9e2a30-0489-47c6-a0f0-6ca45f5aff66" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_7e9e2a30-0489-47c6-a0f0-6ca45f5aff66" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_26e3b358-81e0-4ed0-90b9-a4a3bf4d0a75" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_53f9de0d-d099-4cb3-8691-8fd06891cbaf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_53f9de0d-d099-4cb3-8691-8fd06891cbaf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember_f6ee83d2-aa53-487f-8bda-2d799387881b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_123c27a2-5d10-4b68-8e05-4991a3e2c0a5" xlink:to="loc_us-gaap_TransferredOverTimeMember_f6ee83d2-aa53-487f-8bda-2d799387881b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_b64621e1-4986-4f04-a463-5a3c67c54334" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_b64621e1-4986-4f04-a463-5a3c67c54334" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_b64621e1-4986-4f04-a463-5a3c67c54334" xlink:to="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_RenewablesMember_64d27c90-6a91-483d-bb9a-1ce12ca372e2" xlink:href="rock-20221231.xsd#rock_RenewablesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_RenewablesMember_64d27c90-6a91-483d-bb9a-1ce12ca372e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_ResidentialMember_f6ecbeb9-f0d4-4c24-a422-79000104ca46" xlink:href="rock-20221231.xsd#rock_ResidentialMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_ResidentialMember_f6ecbeb9-f0d4-4c24-a422-79000104ca46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_AgtechMember_339f5939-39b7-4a02-abfa-40044174d69d" xlink:href="rock-20221231.xsd#rock_AgtechMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_AgtechMember_339f5939-39b7-4a02-abfa-40044174d69d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_rock_InfrastructureMember_d05d0e7d-2e2b-4729-9f00-959a5cc73720" xlink:href="rock-20221231.xsd#rock_InfrastructureMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_6059ef95-2fc3-4d9c-b109-be88ff7d2ed7" xlink:to="loc_rock_InfrastructureMember_d05d0e7d-2e2b-4729-9f00-959a5cc73720" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_cb16abe0-f3d2-4353-a6d8-6a407d95428e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_e6e72b9c-473f-4974-aa62-4f6602d0ce77" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_cb16abe0-f3d2-4353-a6d8-6a407d95428e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_bcb038dc-d9cd-4166-9e96-7b3c7973490b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_cb16abe0-f3d2-4353-a6d8-6a407d95428e" xlink:to="loc_us-gaap_Revenues_bcb038dc-d9cd-4166-9e96-7b3c7973490b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails" xlink:type="simple" xlink:href="rock-20221231.xsd#SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"/>
  <link:presentationLink xlink:role="http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationRevenueAbstract_c799e4c4-4921-4653-a619-47a28edbb151" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationRevenueAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_41236efd-2d79-4f63-913b-b7e5382ba25c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationRevenueAbstract_c799e4c4-4921-4653-a619-47a28edbb151" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_41236efd-2d79-4f63-913b-b7e5382ba25c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_123644a1-a58e-4d29-8a5f-a8f94b4ce114" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_41236efd-2d79-4f63-913b-b7e5382ba25c" xlink:to="loc_srt_StatementGeographicalAxis_123644a1-a58e-4d29-8a5f-a8f94b4ce114" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_123644a1-a58e-4d29-8a5f-a8f94b4ce114" xlink:to="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NorthAmericaMember_e7a30b59-e48b-4775-a34e-b80869763310" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NorthAmericaMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:to="loc_srt_NorthAmericaMember_e7a30b59-e48b-4775-a34e-b80869763310" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaMember_fdfd100c-5cc3-4fe4-ac1d-5a9e60f292eb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_23847010-8b06-4726-822c-6c5b2453419d" xlink:to="loc_srt_AsiaMember_fdfd100c-5cc3-4fe4-ac1d-5a9e60f292eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_41236efd-2d79-4f63-913b-b7e5382ba25c" xlink:to="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_3c8914ac-af4f-4b6f-86b2-1637ebd174ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:to="loc_us-gaap_Revenues_3c8914ac-af4f-4b6f-86b2-1637ebd174ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncurrentAssets_6b9ac3fc-5362-479b-83a8-1ebe859119ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncurrentAssets"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_d87eaecd-3330-4c0c-bdbc-2896bd0b4b9e" xlink:to="loc_us-gaap_NoncurrentAssets_6b9ac3fc-5362-479b-83a8-1ebe859119ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>14
<FILENAME>rock-20221231_g1.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 rock-20221231_g1.jpg
M_]C_X0 817AI9@  24DJ  @              /_L !%$=6-K>0 !  0   !D
M  #_X0,O:'1T<#HO+VYS+F%D;V)E+F-O;2]X87 O,2XP+P \/WAP86-K970@
M8F5G:6X](N^[OR(@:60](E<U33!-<$-E:&E(>G)E4WI.5&-Z:V,Y9"(_/B \
M>#IX;7!M971A('AM;&YS.G@](F%D;V)E.FYS.FUE=&$O(B!X.GAM<'1K/2)!
M9&]B92!835 @0V]R92 W+C$M8S P," W.2YE9&$R8C-F86,L(#(P,C$O,3$O
M,3<M,3<Z,C,Z,3D@(" @(" @("(^(#QR9&8Z4D1&('AM;&YS.G)D9CTB:'1T
M<#HO+W=W=RYW,RYO<F<O,3DY.2\P,B\R,BUR9&8M<WEN=&%X+6YS(R(^(#QR
M9&8Z1&5S8W)I<'1I;VX@<F1F.F%B;W5T/2(B('AM;&YS.GAM<#TB:'1T<#HO
M+VYS+F%D;V)E+F-O;2]X87 O,2XP+R(@>&UL;G,Z>&UP34T](FAT=' Z+R]N
M<RYA9&]B92YC;VTO>&%P+S$N,"]M;2\B('AM;&YS.G-T4F5F/2)H='1P.B\O
M;G,N861O8F4N8V]M+WAA<"\Q+C O<U1Y<&4O4F5S;W5R8V52968C(B!X;7 Z
M0W)E871O<E1O;VP](D%D;V)E(%!H;W1O<VAO<" R,RXQ("A7:6YD;W=S*2(@
M>&UP34TZ26YS=&%N8V5)1#TB>&UP+FEI9#HT,34U-#4P.3@R13@Q,45#04$Y
M,D0U1C=#-C5&038Q0B(@>&UP34TZ1&]C=6UE;G1)1#TB>&UP+F1I9#HT,34U
M-#4P03@R13@Q,45#04$Y,D0U1C=#-C5&038Q0B(^(#QX;7!-33I$97)I=F5D
M1G)O;2!S=%)E9CII;G-T86YC94E$/2)X;7 N:6ED.C0Q-34T-3 W.#)%.#$Q
M14-!03DR1#5&-T,V-49!-C%"(B!S=%)E9CID;V-U;65N=$E$/2)X;7 N9&ED
M.C0Q-34T-3 X.#)%.#$Q14-!03DR1#5&-T,V-49!-C%"(B\^(#PO<F1F.D1E
M<V-R:7!T:6]N/B \+W)D9CI21$8^(#PO>#IX;7!M971A/B \/WAP86-K970@
M96YD/2)R(C\^_^X #D%D;V)E &3      ?_; (0  0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0(" @(" @(" @(" P,# P,#
M P,# P$! 0$! 0$" 0$" @(! @(# P,# P,# P,# P,# P,# P,# P,# P,#
M P,# P,# P,# P,# P,# P,# P,# P,#_\  $0@!A0NX P$1  (1 0,1 ?_$
M -L  0 " P$! 0$! 0         *"P<("08%! ," 0$!  (# 0$!
M      <(! 4& P(!$  ! P0! @(#"@L%!08% P4  @,$ 04&!P@1$A,)(10*
M(A5VEK8W=[=8&C&U%C875]<X>!DY03(CT]8DE=6G&&%",R6'N%$T:*CH5'0G
M4D-3DR81 0 ! @,"!@H." 4$ @,!   ! @,1! 4A!C%!46$2<G&!D;$BDK)S
M- >A,D*"$R,S4],45!4U%\%28M*S=!8VT:+"HR3P0X,EX>/Q8V3#_]H # ,!
M  (1 Q$ /P"?P
M
M
M                                                        #Y-O
MOUDNTZ^VRV7:W7"XXO<8UHR.##EL2)=BNDRSVS((EONL=I:G8$N38[U$EMMN
M42I<>2VY2E4KI6OW5;KHIIJJB8IJC&)Y8QF,8Y=L3'9B7Q37155533,353.$
MQR3A$X3R;)B>Q+ZQ\/L
M
M                                    '^''&VFUNNK0TTTA3CCCBJ(;
M;;12JEK6M5:)0A":=:UKZ*4'#LCA.#;/ ^;8K[9<HLEFR7&[O;;_ ([D5JM]
M]L%]LTV-<K/>K+=XC-PM5WM5QAN/1+A;;E!D-O,/M+4VZTM*DUJFM*GW<MUV
MJYM7(FFY3,Q,3&$Q,;)B8XIB>&'S171<HBY;F*K=41,3&V)B=L3$\<3' ^J?
M#Z
M
M
M
M                                                       QWMS:
M6'Z1U?GVWL_N-+7AFN,4O67Y%,]Q5ZENLD%V:Y&AM+6WZU<IZFTL16*5[WY+
MB&T]5*I0R,IE;V=S5O*9>,;URN*8[,SQ\T<,SQ1M8^:S-K)Y:O-7YPLVZ9JG
ML1'?G@B..40SR=O,CR[(O,<V^SN2[^%;.=%\E2DQERE.6K%]H6)<V5K"T6]V
M3[MJTIQ5<C%XJ$(H])<K;:.*K1FA+>]^[EJWN[9G)QX61I[=5$X=.9Y^EA7/
M)X6'"BO=/>&[<W@NQFY\'.U=JFN/:1'-T<:(Y?!Y$S<AQ+@
M
M
M    ./\ YV?+W_I7X6Y39<<N;T#:._UR]38,N&[X4ZV6FXPZN;#REM=*4<91
M:,4<7#:>:4EYBXW.(XG^[6M.NW+TC[TUFFNY&.5R_P 95R3,>TI[=6WDF*9<
MIOCJOW9I%5%N<,S?\"GEB)]M5VJ=G-,PP1[/CRTKNSB?<=!Y/<O6<[XS7.-8
M[=22^IR9<]3Y4Y/N6$R:*?7WO?DW<8UQL]6VDU;B08D"BJT4ZFE<_?\ TGZE
MJL9^U&%C,QC/-<IPBKNQA5SS-7(P=Q-4^N:7.1N3\?EIPCGHJQFGN3C3S1%/
M*[[G!.Y
M                                       /FW:\V>P07KI?;K;;+;(]
M*JD7&[3HMN@L)HE2JJ>ES'68[5*)36O52J>BE3ZHHKN5=&W$U53Q1&,OFNNB
MW3TJYB*>69PAK5EO.3AA@CJX^7<L..EBFMK['+;,W+K^MV37Q%M5K6T,W]VY
M]B'4*2I7A=J*TK15:&RM:)K-_;9RF8JCE^#KP[N&#77=:TBQ.%W-9>F>3X2G
M'N8XM?;MYP?EK65=6YG+#!7E4C^M=;39<\OZ/#I5Q/;1VQ8E<FJR.K5?\'KX
MO2M*]O12>NPHW0WDKX,I<X>.:8[]4,&O>O=ZC9.:H[453WJ9>$_GD>5M]J#_
M )*<B/V2'O\ T1O1]E_W+7TCP_K/=K[3_MW?W#^>1Y6WVH/^2G(C]D@_HC>C
M[+_N6OI#^L]VOM/^W=_<>@MGG1>61=F$2(O*G'VFUN5:2FYX#MZROT4FM$UJ
MN+>->P)+;?6OH6I%$5IZ:5Z'G5N;O+1.$Y6KM56Y[U<O2G>_=RJ,8S5/;IKC
MOTPR]CWF:>7WD[M&;;S#T#&75QQJE<AV)8L1:[FV*R%5J_EDBRLI;JW3HE=5
M=BE^X36JZ]IB7-VM?M1C5D\Q/8HFKR<65;WCT*Y.%.;L1V:XI\K!LQAF[-,[
M&\+]'NW-8YWX_;X'Y&9[BN4>-W?W?"]Y+K.\3N_LZ=>IK+V2SF6](LW;?6IJ
MI[\0V-G.93,?(7;=>/ZM5,]Z99.,9D@
M
M
M                                        $8GVCWEZK$=:Z_X<8E='
M&+YM)R'LO:C<9=4J1KO'KI(8PZPRZTKT6QDV;6MR:I-.BT>\*.ON'NBI,]76
MD?#9FYK%V/ M>!1UYCPI[5,X>^YD<>L#5?@LO;TFU/AW?#KZD3X,=NJ,?>\Z
M(!C61WS#\CL&78Q<Y5ER7%KU:LCQZ\PET;FVF^62<Q<[3<XBU)4E$J!/BMNM
MUK2M*+13T$N7+=%ZW5:NQ%5NJF8F)X)B8PF.W"*;=RNU<INVYF+E,Q,3R3$X
MQ/:E9J<+^2=AY<<8]0[]L:XB'\WQ6(O*;7$<[TX]G5IJNSYMCZDKHEYM%KR6
M%)0Q5Q**O1:M/4IV.)K6M6LZ;<TG4[V0KQPHJ\&>6F=M,]NF8QY)QCB6+TC4
M:-5TVUGJ,,:Z?"CDJC95':G'#FPEM":QL@
M
M                                                  KZ/.NY=UY4
M<U<NM>/7*LS6&@TS-0X+1B2E^W7&Y6>X.JS_ "N-1I;D5=;[E:'([3[:E)DV
MVW0U]:?@I/VY>D?=>BT57(PS5_XRKEB)CP*>U3MPXIF4$[X:K]YZQ73;G'+6
M/BZ>29B?"J[=6S'CB(8A\JCEE7AYS3U=L*[W&L#7>72E:MVM5;R68C>#9K+A
M17+S-6M:$)BXAD,:!>7*^E56[>I"?[YE[TZ5][Z-=R]$8YBB.G1UJ<=D=:,:
M>VQ=V-4^Z=8M7ZYPR]<]"OJU<<]6<*NTL=$J2M*5H51254HI*DUHI*DJIUHI
M-:=:5I6E?14KLL _Z
M                                            ?&R#(\>Q.SSLARJ^
MV;&;!;&JR+E?,@ND&S6>WL4K2E7IUSN+\:%$:I6O]YQ::'W;MW+M<6[5,U7)
MX(B)F9[$1M?%RY;M43<NU13;CAF9B(CLS+DMO_SS?+XT8Y-MEKV7<]YY+$0Y
M_P"3:0LZ,JMJGJ*JVQ3\N;G-L6 28[CE*U4N'<Y:T-TJKPU5JA*^KR&Y&\&>
MPJJMQ8M3QW)Z,^+$37W:8<MGM]-!R6---R;UR.*W'2CQIPI[DRXQ[I]I@W1>
MES(.@>/NO\!A*[F8U]V7>[UL.]U;K3I28S:K%7![/;9=*^E+;J[DTGIZ>_\
ML[+)>K;)T859_,7+E7)1$41W9Z4S[#D<YZQ,Y7C3D;%NW'+7,U3W(Z,1[+EC
MM7S>/,7VZN0F^\HL]QB"]WI;MNKO>G5+,9E=*4JPW.U_;L?OCZ/1_>D2WG/3
M6G=T]!U&5W2W=RGR>5MU5<M>-?L5S,=R(<UFMZM?S?M\S733R484>S3$3W9:
M"Y9G6;9[<*W;.LQRK-+K5;[E;GEF0W?([A5R2I*Y*ZS+Q+F2>^0M%*KKW=5U
MI2M>O0WUJQ9L4]"Q1313R4Q$1[#1W;]Z_5TK]=5=7+5,S/LO+'J\@      &
MQ>N.7W*K4+T=[67(W=F$MQUJ6F!8=F9?#LSO=Z5(F6*EV59;@RI7154/L.(J
MJE%=.M*5IKLSI&EYN,,SE[-?/-%./:G#&.U+89?5=3RLXY;,7J.:*ZL.YCA/
M;AT:U)Y^GF*ZT<BM9)G6#;HM4=24>]VS]?V5#]8WN:+;]_-??D)?GW^E%52]
M*D25T4KW7>FE$'/9O</=[,Q,VZ*[-?+17/>KZ4=R(;_*[\:_EL(N5T7J8XJZ
M8[]/1GNS+JWI'VF775S5 MW(GCGE>).*4AF;E.I,CMN96]2W*]*3%8CE2<3N
M%MALJK3Q$-W2XO412JD46KHW7E<[ZM<Q3C5I^8HKCBIN1-,]CI4]*)GWL?I=
M/D_6+EZL*<_EZJ/VJ)BJ/%JZ,QW9_0[3\>_,KX0<GJV^%JGD)@SV3W)QN-&P
M3,)J]?YV_.<3158%OQ?,V[+<;\^W6O2J[:F:Q6O]UQ5/2<9J&[>MZ9C5FLO7
M\%'NJ8Z=.'+-5.,1[["789#>+1M2PC*WZ/A)]S5X-7:IJPF>UBWH-&W0
M                              #C_P N/.LXL<,=Y9+H#:& \@+]F6+6
M['+G<+G@6*ZZNF,O,918H.00$0YF0[5Q:ZN/,PK@A+U%PFTI=HJB:K32BJ]=
MI.YFJ:SD:<_E;F7ILU3,1%55<5>#,Q/!15'%RN4U7?#3-(SM61S-%^J]3$3,
MTTT3&V(F.&NF>/D:T_>5."_ZJ.67Q%T_^W8V7Y;ZY\[E/&N?1-=^8>B_-9KQ
M;?TA]Y4X+_JHY9?$73_[=A^6^N?.Y3QKGT1^8>B_-9KQ;?TA]Y4X+_JHY9?$
M73_[=A^6^N?.Y3QKGT1^8>B_-9KQ;?TA]Y4X+_JHY9?$73_[=A^6^N?.Y3QK
MGT1^8>B_-9KQ;?TA]Y4X+_JHY9?$73_[=A^6^N?.Y3QKGT1^8>B_-9KQ;?TC
M(>HO:">&FY]KZQT]B^L^3D#)ML;#PO6N.SK_ (9JN+8H5]SO)+;B]HEWJ3;M
MT76X1K3&N%U;7)<8BR7D,T55#3BJ417'S>X&L9/*W<Y=NY:;5JW57,157C,4
MQ-4X8VXC'"-F,QV7OE=^](SF:MY2U;S,7+MRFB)FFC#&J8IC'"Y,X8SMPB>P
M[IG#NU                       '!O8OM#G"S66P<[UM?M8<H9=\U[F63X
M/>I=HPO5$BTRKMB=[G6&XR+6_,W7 F/6YZ9 6IA;K##JFJIJIM"NJ:=UE_5]
MK.9R]O,V[N5BBY135&-5S'"J(F,?BYV[=NV7$YC?W1\M?KR]=O,S7;KFF<*:
M,,:9F)P^,C9LY'C?O*G!?]5'++XBZ?\ V['M^6^N?.Y3QKGT3Q_,/1?FLUXM
MOZ0^\J<%_P!5'++XBZ?_ &[#\M]<^=RGC7/HC\P]%^:S7BV_I#[RIP7_ %4<
MLOB+I_\ ;L/RWUSYW*>-<^B/S#T7YK->+;^D/O*G!?\ 51RR^(NG_P!NP_+?
M7/G<IXUSZ(_,/1?FLUXMOZ0^\J<%_P!5'++XBZ?_ &[#\M]<^=RGC7/HC\P]
M%^:S7BV_I'\)/M*W"!$=Y4/4?*M^6EM58[,G#=11([KM*>X0]*:W;-<8;4K\
M*DLN5I3_ +M?P'['JWUO'PKV5PZUSZ.'Y/K#T;#9:S6/5H^D>9^\P<4?U"\A
M?_\ 5K?_ %P>OY;:K\_E_P#/^Z\_S$TSYB__ )/WGJH'M*7!U]$1,_5/*>!(
M>\%,NK>&:HFP8:UU31U=)"=T,S),=GK6O<F-1Q2:>AOKZ#RJ]7&MQCT;N5F.
MM7$_P_TO6GUAZ-.'2M9F)ZM&'\3]#*^/>T)>73>EI3<K[M_$DJ==;JYD.KIL
ME"$-L4>1(53%+IDSE6GW*^$BB4U<HY3JI*4>[,2YZO\ >&CVM-FOL5_O1#)M
M[^:!7[:J[1V:)_TS+8O#?.2\M/.%1VK5RHQ.UOOK;:JUF6,[#P1,=Y=(_<W(
MF9EA]CMR$-*E)HIVCRF.J5UHNJ4+K377MS]Y+'MLK7,?LU45>35,_I;"SO;N
M[>]KF:(G]J*J?*IB/T-PM>\H>->VJQT:OY Z5V$_)\&C4/#-H85D=P\1]NCC
M<=VW6J]2IT>7VJ]TRXVEU%>M%)I6E:&HS&F:EE/2LO>MQ'ZU%41W9C#MMM8U
M+3LUZ-?LW)G]6NF9[D3BSJ8+-
M<"LN]HOX2X9E>3X?=-7<IW[GB>0WK&KB_ PG4KL%Z=8KE)M<MV$[(W?%D.1'
M)$556U.--KJBM*J2FO6E.\M>KS6KUJF]3=RO1KIB8QJN8X3&.WXMP]W?_1[-
MVJS5:S/2HJF)PIHPQB<-GQCSWWE3@O\ JHY9?$73_P"W8]/RWUSYW*>-<^B>
M?YAZ+\UFO%M_2'WE3@O^JCEE\1=/_MV'Y;ZY\[E/&N?1'YAZ+\UFO%M_2'WE
M3@O^JCEE\1=/_MV'Y;ZY\[E/&N?1'YAZ+\UFO%M_2'WE3@O^JCEE\1=/_MV'
MY;ZY\[E/&N?1'YAZ+\UFO%M_2'WE3@O^JCEE\1=/_MV'Y;ZY\[E/&N?1'YAZ
M+\UFO%M_2'WE3@O^JCEE\1=/_MV'Y;ZY\[E/&N?1'YAZ+\UFO%M_2'WE3@O^
MJCEE\1=/_MV'Y;ZY\[E/&N?1'YAZ+\UFO%M_2'WE3@O^JCEE\1=/_MV'Y;ZY
M\[E/&N?1'YAZ+\UFO%M_2/36[VC;@%-9C.R<=Y&6A;]:4=CW'7>(.O0Z5<JC
MNDJM.RKG'52B:=_^"X[7MK^#N]R>=7J[UZF9B*LO/8KJ_31#TI]8&A51$S3F
M([-%/Z*Y9/LOG\>6O='*HG;+SW'$T>9;H[>M2YP^W5#M:T7(I3'K9?G?!C4I
MU72J:.5I7W"55]!BU[A;QT^UMVZNQ<I_3,,FC?G=ZKAN5T]FBK]$2SKBOG#^
M6IF*V6[1ROP>&I]=$(KE5AS_  5"5*D)C4J\YF^(8\W'1XBJ5JIRJ4T;ZN5K
MV4JJF#=W0WDL^WRE<]6:*O)JEFVM[-W;WM,U1'6BJGRJ8;183R^XH;(5';P#
MDQH/,9$JK:&8..;=P&[7*KKU6:-QW+9#O[MP8E*5(;IX3C27**6FE4]:T-9>
MTC5<MZ1EK]$1QS;JB.[A@V=G5=+S'R&9L5S/)73,]S'%L.VXVZVAUI:'6G4)
M<;<;51;;C:Z44A:%IK5*T+37K2M/16AKN#9/"S^';' _V
M                                  !\+*<FL6%8SD6993<XMEQG$K%=
M\FR*\37*,PK38K#;Y%UN]SENJZ):BP+?%<=<57T)0BM3TM6KEZ[39M1-5VNJ
M*8B.&9F<(CMR^+MRBS;JO79B+=%,S,\D1&,SVH5EW-#DK?N7?)O;>_[Y27'9
MSC)Y"\7L\MWQ%XY@UH;;L^%8]T0I4=#MLQR#'3(JU1*'I=77NG<XJM;*:-IM
MO2-,M9"C"9HI\*>6J=M4]N9G#DC".)735]1KU74;N>KQPKJ\&.2F-E,=J,,>
M?&6KQLVM2C/9N^6WY/YULKAOE5RJFVYZQ)VIJAJ0Z[5#67X_;FH^?6"(A2EI
M\2^8I"CW)"4I;0VFS255JI3M*$8^L;2?A+%O6+4>%;\"YU9GP)[54S'OHY$D
M^K[5.A?N:1=GP:_#HZT1X4=NG"?>SRI@9$25P
M               YI\Z?-/X^>7WEF"8=N7#MR9-<]@X]<<ELK^L<>PF\P(L"
MV7)-KD-71W*MAX7(9EKD*ZH2TT\BJ/355*^@Z30]U]0U^U<O9.NS33;JBF>G
M-43C,8[.C15^ASNM;S9#0KM%K-T7JJKE,S'0BF8PB<-O2JI:*_>5."_ZJ.67
MQ%T_^W8WGY;ZY\[E/&N?1-+^8>B_-9KQ;?TA]Y4X+_JHY9?$73_[=A^6^N?.
MY3QKGT1^8>B_-9KQ;?TA]Y4X+_JHY9?$73_[=A^6^N?.Y3QKGT1^8>B_-9KQ
M;?TA]Y4X+_JHY9?$73_[=A^6^N?.Y3QKGT1^8>B_-9KQ;?TA]Y4X+_JHY9?$
M73_[=A^6^N?.Y3QKGT1^8>B_-9KQ;?TA]Y4X+_JHY9?$73_[=A^6^N?.Y3QK
MGT1^8>B_-9KQ;?TB0+:+FQ>K3:[Q%0\W%NUNA7.,W(2A#Z&)\9J4RA]+;CK:
M7DMNTHJB5*3177I6M/2<#73-%<T3PQ,QW'=45171%<<$Q$]U]$^7T
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
M3.VFJ)B8[4N\L7[.9M1?R]=-=FK@JIF)B>W#UYXO4
M            ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_]Q7>I;\B'&\[
M!R0    -L>!'[]'"[^++CG]<&'&JU[\#SO\ *7OX=3::'^-9/^:M?Q*5F\5I
M6,                       %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0K=
MJOXGF?/W/+EKT;!@            V"U?RRY/Z57&_1-R#W)K^-$[:-VO&-BY
M5;+$XA-.B69>/LW2ECG1T^BM&GX[C=*TI7IUI2M-?FM)TS.X_6\O9N3/'513
M,]W#&.U+.RVJ:ED_1;]ZW$<45U1'<QPGN.FNFO: /,'UB[$8S+)\"WG96.QI
M<+9&$6RW72D5*:)JAC(=>UPNX.2^E.M'YM)RJJ]*Z+IZ#FLYN#N_F8F;--RQ
M7RT53,=ROI1VHP='D]^==RTQ%ZJB_1R5TQ$]VGHSVYQ=J..?M'O&+8+L&R\A
M==9GH&[OU88=R.U/+VEK]+E5):=ERY-GM-IS.V-N5KXE&D6>=1I'5*GEU312
M^,U'U=:GEXFO3[E&8HY)\"OV9FF?&CL.PT_U@:;?F*,_;KL5\L>'3[$15'BS
MV7>+4^Z=2;VQ6-F^FMCX;LS%)7:E-ZPR_P!OOL6.\JBNL.X)A/N/VNXM50JC
MD:2AJ0TI-4K0FM*T.%S>2S>1NS8SENNU=CBJB8[F/#'/&QVV5SF5SMKX;*7*
M+EJ>.F8GN\D\T[63C&9(                              JR-]_/INCZ
M6=C?+"\%H<AZ#9\U1Y,*TY[TV]YVORI8G,IB@            94U]O7=VI7&
MG=5[BVEK5QBJE-*P+8&5XAV56]ZPYVTQ^[6^G1Q^G>JGX%*]->M3%S&1R6;C
M#-6;5R/VJ*:N_$LFQG<YE?1KUVWU:JJ>],.BNIO.^\Q_5'JL9>\&MFV>+X?2
MS;9Q+'<M\?L[*5]:R5B%:<Z?\1".U76[>GK55.BJ]QSV;W)W<S6,_ ?!5SQV
MZII]C&:?\KH,KOEO!E=GPWPE$<5=,5>SLJ_S.L6CO::6U+@V[DEQKJTFM6Z7
M++M)9+XE$TJM*751->YTZE71#=:JIW9-6M:T[>GI[J<IGO5K.VK3<SV*;E/^
MNG]QT^2]8O!3J.7[-5N?]-7[[M[QP\TO@QRD=AVK6^]\:M6837&H[. ;'JYK
MG,9$U]24M0+3 RFD"#E,Q??2O99Y-PZ>GK7JE5*<5J.Z^N:7$U9FQ5-F/=T>
M'3ARS-.,TQUHAV6G[RZ+J4Q3E[],79]S7X%78B*L(J][,N@YS[?
M                                    !'L]H9Y=4T_QELG&S%KHAC.>
M1TY2<C1%DN-W"U:EQ.;"G7QQ?J]:.1D9=D%(EM3XE:-RX*+@U2BJ)7VR!ZOM
M)^MZG5J5V/B,M&SDFY5$Q'BQC/-/1EP>_FJ_5-.C3[4_'9B=O+%%.V?&G".>
M.DA!DUH; ,K:+W!E?'_<>M-UX._X.4ZQS*Q9A:D*=6TQ.7:)K3\JSSE-TJI5
MLOD&CL.6CI6CD9]::TK2O0Q<]D[6?R=W)7_DKM$TSS8QPQSQ.V.>&5DLW=R.
M;MYRS\K;KBJ.?">">:8V3S2L[]-[6Q+>>J-=[CP.76;B&S,.L&:6!URK=)+4
M"_6YB>F#<&FUN)C76V..JC2V*U[F)+3C:NBDUH5GSF5O9'-7,G?C"]:KFF>S
M$X8QS3PQ/'&U8[*9JUG<K;S=B<;5RB*H[$QCA//'!/)+)1C,@
M                          0WO:;/GUXQ_1-EWRP:)@]6GH.9\[3Y*)?6
M-Z;EO-5>4C(DEHY      M8L!_,3"O@ECGXGAE6LQ\O7UY[\K-V/D*.I'>>M
M/%Z@                       !4X%JU7P
M   "7I[,-^8G+_X6Z<_$^PB)/69\OE.I<[]"5?5Q\AF^O;[U24V1>DL
M                        @G>?UR]_3YRWII+%[KZWKKC%'N.'.MQU?[+/
MVQ=7H[NR)JU)73QUV%<"'8Z(<3UCRK=+JBO:]6JIRW"TCZAI/UV[&&8S.%78
MMQ[2.WC-7/$QR(5WYU7Z]JOU.U..7RV-/9KGV_<PBGFF)Y7"$[EQ(!VN\B+E
MI7CGS1LVN\AN7JFN>2T>%J^](??4W"A9WZTY)U=>ZM^(AM<MS()#ME1575*&
MKVXNO]VAQ>_.D_>.C59BW&.8RTS7'+T?=QW/"][#L-R=4^[]7C+W)PR^8PHG
MK>XGN^#[Y/A((3@                                 !B;?GS%;I^B;
M8WR/O)EY#TZSYVCRH8N>]"O>:K\F5626@5I              9IUSR1Y#:@7
M&5JK>FWM<)B+:4PQA.Q\OQF'2C-*)0TY!M%WB0WXU6Z=BFG&U-K16J5)JFM:
M&'F-.T_-X_6K%FYC^M13/LS#,R^H9_*8?5;]VWA^K75'L1+HYJ3SV/,<U8J.
MU<-K8]MVU1EH4BS[;P>R7I+B4TZ+;D9!C"<0S22AVE*=W?=%*I6G5-4UJKKS
MF;W&W=S6VFU59KGCMU3'L5=*G_*Z#*[Z[P9795=INT\E=,3[,=&KV76G1WM,
MV'S/5+=R0XX7^P.>X1+RO3.10LCB.K7W4JZG",S<QZ5;X[*NVJNE\FN*36M4
MIZIHE7*9[U:WJ<:M.S--7[-R)C_-3CCXL.HR7K%M3A3J&7JI_:MSC_EJPP\:
M7<#CIYD/"GE0J% U!OS#9^4SNU#6!90^_@N>KDUHGQ(L+%<O9L]ROBV%+I13
MEN3,C]?[KE:>DXG4=W-:TO&K.6*XM1[JGPJ?&IQB.WA/,[/3]X='U/"G*7Z)
MNS[FKP:O%JPF>UC#>$TC<@                         Q9N3=^I./>"W/
M9>ZM@8WK?![1T1*OV2SJ16GI2T.+8MMKAMI>N5\O,M+2O @PF9$R15-:-MJK
M3H963R6;U"_&6R5NJY?GBB/9GBB.69PB.5C9O.97(6)S.<N4V[,<<S[$<<SR
M1&,RBA\X?:*,XRQR[8#PDQUS7^-UI*@R=TYU;84[.KJA75GUG#,0?K-L>)1:
MTHI3<JX^^$UUMQ*J1X+R*]94T3U>V+6&8UJKX2YP_!TS,4QUJMDU=B,(YZH1
MAK._UZ[,V-&I^#M\'PE48U3U:>"GLSC/-3*-1FN<YILG)[MFNP\MR3.<POLB
MLN]91EM[N.0W^ZR:THGQI]WNTF7.E+2FE$I[UU[4TI2G2E*4)(LV+.6M19R]
M%-%FG@IIB(B.Q$;$>7KU[,7)O7ZZJ[M7#-4S,SV9G:\L>KR
M        ;1<7N9W)'ASEGY6:!V;>L0]:?:=O^*O+I=\$RQMNK5*LY/AUQ\>R
MW)Q3#?A(E4;;GQFU*]7?957N-9J>C:;K%KX+/VJ:\."K@JIZM4;8['!/'$ME
MINKZAI-WX7(W)HQX:>&FKLTSLGL\,<4PF"\"?/@T!R9=LVNM_L6KCON:=6/!
MAR[A<EJU'FMS=4TPTU8,GN*Z/XE<ISZZ^';[POPJ>Y;:GR7ET01%KVXN?TV*
MLQD,<QDXV[(^,ICGICVT1RT]NF(2OH>^V1U&8R^>PR^;G9MGP*IYIGVL\U7:
MJF7>=*DK2E:%44E5**2I-:*2I*J=:*36G6E:5I7T5.$=N_Z
M                 @ >?7_4QW%\$M0?5CC)/>XG]M6>O<\N4&;[_P!Q7>I;
M\B'&\[!R0    -L>!'[]'"[^++CG]<&'&JU[\#SO\I>_AU-IH?XUD_YJU_$I
M6;Q6E8P                       5>O+G]Z[D[_$+NGZR,E+-Z3^%9;^7M
M^1"MVJ_B>9\_<\N6O1L&                99TUO?<?'G,HF?Z1V1EFL\NB
M=B??;%;L_ ]>CH71SWOO,#JY;+_:7%TZN0YS,B*[_P!]M1BYS(Y/4+,Y?.VZ
M+MJ>*J,<.>)X8GGB8EE93.YO(7HOY.Y7;NQQTSACS3'!,<TXPE,<#_:([/D4
MFS:VYRV6#B]R?6Q A;[PNVOIQJ2ZOJAMS86$PFY,FP+6M-/$N-HH]#JMRG?!
MB,H6Z1?KOJ]KMQ5F=#JFJGA^"JG;[RJ>'L583^U,[$EZ)O[1<F,OK4135P1=
MIC9[^GB[-.SFB-J4)C>28[F-AM&58E?;/D^,Y! C76Q9#C]RAWBR7FV3&Z.Q
M;A:[I;WI$*=#DM*HI#C2U(52OHJ1C<MW+-R;5ZF:;M,X3$QA,3R3$[8E)%NY
M;NT1=M515;JC&)B<8F.6)CA?:/A]@                           *LC?
M?SZ;H^EG8WRPO!:'(>@V?-4>3"M.>]-O>=K\J6)S*8H
M=)>)GFQ<U>(+EJM6%;1F9SK>W5CM*U1M2LG,\-3;V.Y*8%B>ERF\DPUA"%JJ
MA%GGPF:KZ*=;=I3M.<U;=71=7QKO6HHS,_\ <H\&K'EGBJ]]$SR3#H=+WHUC
M2IBFS=FO+Q[BOPJ<.2..GWLQ'-*5_P (?/'XJ<KG[3A&PI%..>XY]8\2-C6=
MW>,]@V3W%VE4^!A^QE,6ZV*E//42EN%=FK9+>==0U&I+5W*I%6M[D:KI43?R
M\?6,G'NJ8\*F/VJ-L]NGI1QS@D_1M\],U28LW_\ CYN>*J?!F?V:]D=JK">*
M,7:LXQV                                          #\\R9$M\25/
MGRH\&#!COS)LV8^U&B0XD9I3TF5*DO*0S'CQV4*6M:U42A-*UK6E*'[$35,4
MTQC5/!#\F8IB:JIPICAE6S^91RQ?YF\P=J;AB3'I.#L7&F#ZH9=:6QZKK+$9
M$N'CC]([M:O17LA>>DWB0TNM:MR[DZFG1-*4I8[=S2HT;2+63F,+^'2N=>KA
M[FRF.:(5[WAU2=7U:[FXGXG'HT=2G@[NVJ>>9:(&\:0  3'_ &<#ELG+M5[$
MX?95=J+OVJ9LG9&K8LI^E7Y&N\KN5$YC9[>S1-*4BXIG4U,U=5*JM:LCZ4IV
M-5Z0_P"L72?@<U;U>U'Q=V.A7UZ8\&9ZU,8>\YTM>K[5/A<M<TF[/AVIZ='4
MJGPHCJU;??I.!&B1@                                    !#>]IL^
M?7C']$V7?+!HF#U:>@YGSM/DHE]8WIN6\U5Y2,B26CD     "UBP'\Q,*^"6
M.?B>&5:S'R]?7GORLW8^0HZD=YZT\7J                        %3@6K
M5?                             )>GLPWYB<O_A;IS\3["(D]9GR^4ZE
MSOT)5]7'R&;Z]OO5)39%Z2P                           &F_/WE+;N'
M'$[;F]'G8_Y16.P+LFN[?(2T[2[;)R:M;-AD6L5WT3(D*ZR4SIK=*5K[WPY"
MNGN3<:#I=6L:K:R,8_!U58USR44[:O8V1SS#4:YJ5.DZ7=SL_*4TX41RUSLI
M]G;/-$JTB[W>Z7^[72^WNX2[M>KU<9MWN]TGON2I]RNERDNS)]PFR75*=D2Y
MDMY;CCBJU4M:JUK7K4LC113;HBW1$113$1$1P1$<$1V%>*ZZJZIKKF9KF<9F
M>&9GAE\\^GR ?HAS)=OEQ9\"5(@SH,AB9"FPWW8TN'+C.I>C2HLEE2'H\B.\
MA*T+0JBD*I2M*TK0_)B*HFFJ,:9X8?L3-,Q53.%4<$K*[R[^5,/F1Q$U%NU4
MB.YELZQIQ?9T-CP$5MVS<2HBSY=1<2/6J+?'O<ME-VAL5]TBW7"/U]-2M^\.
MESH^KWLE_P!J*NE1ST5;:>SA[69Y8E8?0-3C5]*M9S9\+-.%?-73LJ[&/MHC
MDF&[)I6X                                !B;?GS%;I^B;8WR/O)EY
M#TZSYVCRH8N>]"O>:K\F5626@5I                 #_J5*0I*T*JE2:T4
ME2:U2I*DUZT4FM.E:5I6GHJ!U/XE^<9S<XGNVRSP=C2-OZUA+CM.ZVW#(G9;
M 8M["?!I#QK)Y$FF7XFAB.JM([,6;[WMKHE2XCM$]M>7U;<_1=5B:ZK?P.9G
MW=O"F<>>GVM7/C&//#IM+WMUG2YBB+GPN7CW%S&J,.:?;4\V$X<TI7_"+SI>
M)W,23:,*NUP>T/N>Y>#&9U[L2Y0:6?(+D[3IZG@F>)3"L^1/..5HAF+*:MES
MD+KT:BN4IW$5:WN9JNCQ-ZB/A\G'NZ(G&(_:IVS'9CI4QQRD_1M[]+U:8LU3
M\!G)]S7,83/[-7!/8G"9XH=@#D75@                     '%KS%O.BT7
MPN]]]:ZZ1;=W<BF6WXSV(VVX5_(S7DRK71A[9.0P5*5Z^TXNB_>. NMP6E%4
MR'("7&75]GN]N;GM9PS.8QL:=^M,>%7U(GB_:G9R=+;#D-?WOR6CXY?+X7M0
M_5B?!HZ\QQ_LQMY>CLE"BY-\LM]\O]@R-D;ZSZYYC>:>,S9;5W>HXIB-M=71
M=+/B&-1JIM=BMR>U/?X:*OR5I\20X\]53BIGTS2LAI&7^K9"W%%''/#55/+5
M5PS/L1P1$0A[4=4SVJW_ *QGKDUU\4<%-,<E,<$1[,\>,M<C8M>
M                #M'Y=_G1[[X9NV/7.QG;GN_CI&7'A4P^[S_%S37]M2FC
M/?K/))[O5J##:HFJ;)/6NV*2WX<=4!3CC]>-WAW-R&LQ5F,OA8U&=O2B/!KG
M]N(X_P!J-O+TL,'7Z!O?GM(FG+YC&]I\>YF?"IC]B9XOV9V<G1X4VOC9RCT=
MRVUM;MIZ(SFVYEC<NC3-SB-J]4R/%+LMOQ'L?R_'WZTN./WJ-6E?\-Y/AOHI
M1Z.MYA;;JX5U+3,]I.9G*YZB:+D<')5'+3/!,=C@X)PG8F+3M2R6JY>,SDJX
MKMSP\M,\E4<,3W^&,8VM@3 9X                           " !Y]?\
M4QW%\$M0?5CC)/>XG]M6>O<\N4&;[_W%=ZEOR(<;SL')     VQX$?OT<+OX
MLN.?UP8<:K7OP/._RE[^'4VFA_C63_FK7\2E9O%:5C
M     !5Z\N?WKN3O\0NZ?K(R4LWI/X5EOY>WY$*W:K^)YGS]SRY:]&P8
M              =0_+J\T_>? 7*(]HB29FQN/]XGT=S#3=XN3M(<.LAZJY>2
MZ[G/^.G#\KIWJ4[1M%8%SI[B6RIQ,>1&YC>'=?(Z]:FN8BWGXCP;D1[%<>ZI
M]FGBGAB>DT#>;.Z'<BB)FYD9GPK<S[-$^YJ]B>.."8GP<>>0VI^4NI\8W1I?
M)X^483E$?JVY3L8NMCNK"&_?/&<FMGB./67)+*\Y1N3&<K7IU2XVIQEQIU<$
M:AI^;TO-U9+.T]&]3W)CBJIGCB>*?TXPG#(9_*ZEE:<YDZNE9J[L3QQ,<4QQ
MQ^AFPPF8                          !5D;[^?3='TL[&^6%X+0Y#T&SY
MJCR85ISWIM[SM?E2Q.93%                    [M>7!YW>Y.*4O']6;\D
MWW=/'9I46V1O6Y-)^RM7V]'AL-/8?=[@\A>0X_;XZ:4]Y)[U$-MH2F'(BI2I
MMWAMX]RLGJL59K(139U#AY**Y_:B."9_6CMQ/#':[O[Y9O2YIRV>FJ]D.#EK
MHC]F9X8C]6>U,<<W#4VV];[TU]C6U-29A9LZP'+H-)]BR.QR?'B26Z+4S(C2
M&UI;E6^YV^4VMB7$D-M2HDAM;3S:'$*32%<WE,SD<Q5E<W15;OT3A,3_ -;8
MGAB8V3&V-B8\KFLOG;%.9RM<5V*XQB8_ZV3'!,3MB=DLBF.R
M                            <4_/7Y>_]-7#:[:\QJYO0=G<E7KAK3'5
M1'?"F6S"&F(S^TK_ $5TI6C*L?FM6:E4*2ZA^]MNH_\ "5T[/<;2/O+6(S%R
M,<MEL*YYZO<1W8Z78IPXW'[ZZK]W:1-BW.&9S&-$<U/NY[G@]FK'B0'">$'@
M  !MMP7Y.7;A_P J=0;Y@+E+M.*9,Q#SBV15.U5>]>9 E5ES:UT8;6E$F4JP
M37GX='*+0W/88=JFM6Z&IUS3*-7TN]D*L.G73X,\E<;:9[L83S3,-IHNI5:3
MJ=K/4X]"FKPHY:)V51W-L<\1*S&LEZM626:T9%8I\>Z6._6R!>K-<XB_$B7&
MU72(U.MT^*YTIXD>9$?0XA7]J54J5LKHKMUS;N1,5TS,3'),;)A8JBNFY1%R
MB<:*HB8GEB=L2^F?+Z                                    (;WM-G
MSZ\8_HFR[Y8-$P>K3T',^=I\E$OK&]-RWFJO*1D22T<@     6L6 _F)A7P2
MQS\3PRK68^7KZ\]^5F['R%'4CO/6GB]0                        J<"U
M:KX                            !+T]F&_,3E_\ "W3GXGV$1)ZS/E\I
MU+G?H2KZN/D,WU[?>J2FR+TE@                           (67M%W+K
M]).]\-XH8I=/&Q+0\1.3YZB))\2)<MKY?;&'(4.4A%5L.O81A<E#;2TJHMJ1
M>9K+E**;Z4F;U>:3]6R->JW8^-OST:>:BF=OC5>Q33*(-_\ 5?K&=HTNU/Q5
MB,:N>NJ.#WM/LU3"-Z2*CX   )('LZ'+9.M]\YIQ5RN[4C8IO> K)L#:EOT;
MBP]K8?;W794&+124M-/YGA;#R5J6NE77[/#912JW*4K'7K#TGZSD*-4M1C=L
M3A5U*IX?>U>Q5,\20=P-5^KYZO3+LX6K\8T]>F.#WU/LTQ'&FGD,I?
M                          !B;?GS%;I^B;8WR/O)EY#TZSYVCRH8N>]"
MO>:K\F5626@5I                     =^/+@\\O;G&:18=4<EI>0;HT(W
M5BVP+Y(?]\]HZRA=4MLKM%TGOMNYCC,%'HK;)SU9##5*)B2$-MIBN<'O'N1E
M-2BK-:;%-G/\,QP45SSQ'M:IY8C">.-N+N=W]],UITTY749JO9'@B>&NB.:?
M=1').V.*>)-6U7M?7.[\!QO:&ILQLN>8#EL!NY6#);#)K(A3&%^Y<9>;<0U,
MMURA/44S*ARFV9<.0A;+[;;J%(I#&:RN9R5^K*YNBJW?HG"8GA_^8GBF-DQM
MB<$P9;-9?.6*<SE:Z:[%<8Q,?];)Y8G;$[)C%D$QWN                 '
MSKO=[3C]JN5]OUTMUDLEG@RKG=[Q=YL:VVJU6V"RN3-N%RN$QUF)!@PX[:G'
M775I;;0FJE5I2E:GU117<JBBW$U5S.$1$8S,SP1$<<OFNNFW3-=<Q%$1C,SL
MB(CCF>*$0;S0_/?O&;N9#H+A!>YV/873UJT9ER"B^L6_)<L]U5F5:]5T5X4O
M&L;JBBDN7IQ*+E-JK_9$Q&6Z/S)<W8W%HL='/ZW3%5[AIM<,4\]?+/[/!''C
M.R(IWDWVKO=+(Z-,TV>"J[P35S4<D?M<,\6$;9B_//.R'79$AUQ]]]Q;SSSR
MU.NO.NJJMQUUQ=5+<<<6JM5*K6M:UKUJ2;$1$81P(WF9F<9X7\P
M                   -AN,O*C=_$/9ENVKHO,YN*Y#%JRS=;<JKDO&<OLZ'
MJ//8[F%A4ZW$OMEDUI7JA?:\PNM'8[C+R4.IU^I:7DM7RTY7/417;G@GW5,\
MM,\4]_@F)C8S].U/.Z5F(S.2KFFY'#'%5')5'''_ .8PG:G;>7#YK&E>?6.1
M\=56)K;D-9K963EFI;C/HXB[-0VT>O9/KFXR/#7D>-JJKO=8K2EPMO6J'T+:
MHW*?@W>+=;.Z#<^$VW-/F?!N1'!R4UQQ3S\$\6W&(FO=_>?)ZY;^#V6\_$>%
M1/'RS1/''-PQQ[-L]4SEG3                           0 //K_J8[B^
M"6H/JQQDGO<3^VK/7N>7*#-]_P"XKO4M^1#C>=@Y(    &V/ C]^CA=_%EQS
M^N##C5:]^!YW^4O?PZFTT/\ &LG_ #5K^)2LWBM*Q@
M     J]>7/[UW)W^(7=/UD9*6;TG\*RW\O;\B%;M5_$\SY^YY<M>C8,
M              '2/RTO,4S_ ,OW<K=^C^^.3:5S:1 M^X-<,NI56Z6QA:D1
M\JQEJ1(CPXF<8VV\M45:U(:ELJ<BO*2AQ+K/.;R;O9?7\G\'.%.=HQFW7R3^
MK5^S/'R3MC@PGH=W=?OZ%F^G&-63KF(N4<L?K1^U'%R\$\L6&VMMCX3M[ L1
MV?K?(H&68)G5B@9)B^0VQ:U1;G:;DREYASPW4-28DIJM:MR(SZ&Y$5]"V7D(
M=0M%*^YG+W\I?KRV9IFB_15,51/%,?\ 6R8V3&V-B><OF+.;L49G+U178KIB
M:9CCB?\ K;'#$[)VO;'B]@                         59&^_GTW1]+.Q
MOEA>"T.0]!L^:H\F%:<]Z;>\[7Y4L3F4Q0                    '2;RW_
M #)=J^7[L]%PMSEQS'2&5SHR-HZG=FU3%N,>E4,URK$O65^J67.K5'I_A/>X
M9GM(I&E5[/"=8YS>/=S*Z_ENC5A1G:(\"YAP?LU<M,^QPQQQ/0[O[PYK0LST
MJ<:\G5/AT8\/[5/)5'+Q\$\U@AHW>&LN1VK,1W+I_)XF6X#FMNI/L]TC44T\
MRXVXN-<+3=8+O23:KY9I[3D:9$>2EV/(;4A5/1UK 6>R69T[-5Y/.4S1?HG"
M8[TQ/'$QMB>.$ZY+.Y;4,M1F\I5%5BN,8GOQ,<4Q.R8XI99,1E
M                            !7>><+R[KRYYJY_=;#<JS=8:D<?U#K*C
M,E,BW3K7BMPEM9%E<-3*ZQ7V\PRM<N7'?32BW+;ZFA=:U:ITL'NAI/W3HMNB
MY&&:N_&5\L35&RGWM.$3'+CRH$WLU7[UUBY51..6M?%T<DQ3.VKWU6,Q/)AR
M.69U#F@    3M/(#Y:4WQQ!II?)+EZSL#C).B891$A]"Y<_5UX3*FZYGT2I=
M'/!LK<699$I2CL9CVR/6JJJ<Z4@W?W2?J.K_ %RW&&7S,=+L5Q[>.WLJ[-4\
MB:MQM4^NZ5]3N3C?RT]'LT3MHGM;:>Q$.[9PSM@
M              "&][39\^O&/Z)LN^6#1,'JT]!S/G:?)1+ZQO3<MYJKRD9$
MDM'(     %K%@/YB85\$L<_$\,JUF/EZ^O/?E9NQ\A1U([SUIXO4
M                *G M6J^                             2]/9AOS$
MY?\ PMTY^)]A$2>LSY?*=2YWZ$J^KCY#-]>WWJDILB])8
M           &OG*OD'C'%;COMK?V6*CKMVM\0N-X@6Z2_6,G(<G>HBW8?BS3
MR:*4W(RC*9L. A5*5[%2.ZO1*:UIL-*T^[JFH6LA:]M<KB)GDIX:JO>TQ,]I
M@:GG[>F9"[GKOM;=$S$<L\%-/;JPCMJR#/\ .<FV=G69;(S2XN7C+\]RB_9C
MD]T=Z]]PO^2725>+M+JFJE=E'YTQ:J)I7HFE:4IZ*%ELO8MY:Q1EK,86;=,4
MTQR1$81["N=^]<S-^O,7IQNUU35,\LS.,O)'J\@   ]IK?8.4ZGV#A.S\(N*
M[3F&OLJL68XU<45<I2+>L=N4:ZV];J6G&5NQZR8J4NM]U*.-U4BOHK4\<SE[
M6;R]>6OQC9N4S3,<TQA+VR]^[E;]&9LSA=MU15$\\3C"SLXU[TQ?DQH75.^<
M.4BEBV?AMJR1$-+R9"[/='6U1,BQR2\FE$N3L9R*+*M\BM/1X\9?0K/J61NZ
M;G[N0O?*6JYCLQQ3V*HPF.:5C=.SMO4<C:SUKVERB)[$\<=F)QB>>&;S"9H
M                              8FWY\Q6Z?HFV-\C[R9>0].L^=H\J&+
MGO0KWFJ_)E5DEH%:0                     #I9Y<'F6;:\O\ V.R];WKC
MF6B<HN;+FSM1NS*)B3D.)8BNY;B"I*O5['G5MB,(HAVE4,7!II,:5[BC+L?F
M]X]V\IK^6PJPHSU,>!<Y/V:N6F>['#''$]#N_O%FM"S&-.->2JGPZ.7]JGDJ
MCV>">*8L$=*[GUQR$U?AVXM2Y+#RO LYL\>\62ZQ%I\1"7:=LNUW2)W*>M=]
ML\Q*XLZ&]1+\24TMIQ-%IK0@+.Y/,Z?FJ\GFZ9HOT3A,?ICEB>&)X)C:G;)Y
MS+Y_+49O*U158KC&)_1/),<$QPQ.QE(Q62               >0S_/\ "M5X
M9D>Q-C9/9L,P?$;6_><DR?()K5OM-HMT?MHI^3)=K2E5N.K2VTVBBG7WEH;;
M2IQ:4U]LOE[V:O4Y?+TU5WZYPBF(QF9_Z[G#+ROW[.6LU9C,5119HC&9G9$0
M@K^:KYOF<\UKY==0ZAEWC!>+=FNKB&8+;DNUY#N1V"ZU6)D&>LH<0MG'&I<?
MUBV615*(;K5N1,2N4AE,2<-UMT;&BT1F\W$5ZI5'#PQ;QXJ>?BJJ[4;,<85W
MFWKOZQ7.5RLS1IL3P<$W.>KFXXI[<[<,.(YVKC@
M          ]%B.7Y5@&3V+-<'R.]8CE^,7*->,=R;'+E+L]\LETAKHY&GVRY
MP76)<.4RNGH6A5*].M/P5J>=ZS:S%JJS?IIKLU1A-,QC$Q/%,2]+5V[8N4WK
M-4T7:9QB8G"8GEB83<O*>\YG&N6,>S:%Y'W&RX;R2C,-0\>R-Q4*R8KNWH[X
M+*+1'ZL1++L3L4BCUJ;Z-7!7<]!33JN)'A7>K<ZYI4SG].BJO3IX8VS5;[/+
M1^UQ<%7+,Q[K[W6]4B,CJ$Q1J'%/!3<[')7^SQ\-/)'?LX)W(
M              ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_\ <5WJ6_(A
MQO.P<D    #;'@1^_1PN_BRXY_7!AQJM>_ \[_*7OX=3::'^-9/^:M?Q*5F\
M5I6,                       %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0
MK=JOXGF?/W/+EKT;!@                    2-/(4\QB1I/9D3AYM>]=-2
M;?O]*ZPNMSEH1&U]M6YJHTU9D.OJ3X./;*D>''\*BJH8O7@+;0GUN6Y6.]^]
MW8SN6G6,I3_R[-/AQ'NZ(X^S1P\]./)$._W(U^<GF8TG-3_Q;M7@3/N:YXNQ
M7P=;#EE-;(83"                         "K(WW\^FZ/I9V-\L+P6AR'
MH-GS5'DPK3GO3;WG:_*EB<RF*                      ==_*0\RF_<$MR
M-8UFURN-PXT[1NUOA[*L75Z8WAEU<JB!!VGCT)*'GFIUF96E-U8C)[[G;&^V
MJ'7XT+P^2WLW;MZ[D_A+,1&I6HGH3P=*.&:)GDGW,S[6>2)J=5NMO#7HF;^#
MO3,Z==F.G'ZL\$5QV/=1'#'+,0L![1=[5D%IM=^L5R@WBR7NW0KO9[O;)3,Z
MVW6U7*,U,M]RM\V,MR/,@SHCR'6G6U*0XVJBDUK2M*D!UT56ZYMUQ,5TS,3$
M[)B8X8F.6$Z45TW*8KHF)HF,8F-L3$\$QS2^B?+Z
M                .6WG!<O*<1.%F?WBPW1N#M':[;NI-8)0^IJX1+KE,*2U
MD64PZ-=SS3F'XFF9,8?[:M(N-(C:Z_XJ:5ZC='2/O?6;=%R,<K:^,KY,*9V4
M^^JPB8Y,>1S6]>J_=6CW*Z)PS-WP*.7&J-M7O:<9[.'*KN2P:!      .FWE
M&\MD\0>:VM\KOUVI:]9;%<_1-M5R2_1FVQ,7R^9#;M^1SU+0XVPQA^4QH%R>
M>HGQ4PX\AM-:4=7UYK>S2?O?1;EJW&.9M_&4<O2IB<8CK4XT]F8GB='NKJGW
M5K%N[7.&6N>!7R85<$SU:L)[$3RK%DKRGT
M          AO>TV?/KQC^B;+OE@T3!ZM/0<SYVGR42^L;TW+>:J\I&1)+1R
M    !:Q8#^8F%?!+'/Q/#*M9CY>OKSWY6;L?(4=2.\]:>+U
M           "IP+5JO@                            $O3V8;\Q.7_PM
MTY^)]A$2>LSY?*=2YWZ$J^KCY#-]>WWJDILB])8
M     $1;VD3E[[Y9!K;A?B%U[HF.(B;9W"U&5THJ^W&*_%UQC$MQ*TN47;K)
M*E7:0PI*FG*7" [2O>WT3+7JYTCHV[FLWHVU?%V^Q'MZNW.%,3S51QHK]8.J
M]*Y;TBU.RGP[G9GVD=J,:ICGIY$5DE%&8     $M7V;7EI1^#M/AGE5R_P 6
M"M_<6I$2GT>[B2%PK5L?&H?C+2JGJ\JL"ZQH[5%55X]Q>51-$UK6*/6-I.%5
MK6;4;)^+N=^BKOTS/-3"4?5[JF--W2+L[8^,H[U<=ZJ(ZTI71%:3P
M                        Q-OSYBMT_1-L;Y'WDR\AZ=9\[1Y4,7/>A7O-
M5^3*K)+0*T@                      #L-Y0_F7WG@OMU&&9[<9D[C-M.\
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
M +?/'['D]7@F#=/>R,_%.FZE5AGHV45S_P!SFG]ORNSPR-".W?@
M              !  \^O^ICN+X):@^K'&2>]Q/[:L]>YY<H,WW_N*[U+?D0X
MWG8.2    !MCP(_?HX7?Q9<<_K@PXU6O?@>=_E+W\.IM-#_&LG_-6OXE*S>*
MTK&                       "KUY<_O7<G?XA=T_61DI9O2?PK+?R]OR(5
MNU7\3S/G[GERUZ-@P     9TXT<?<SY4[RU]H#7MSQBS9ELBXW&V6.YYE-NM
MOQF*_;+%=<@?7=IEDLN175AE<*T.I15F$^JKJDTK2B:U4G!U+4+.EY&YG\Q%
M4V;<1,Q3$35MF(V8S$<?+#-T[(7M3SMO(V)IB]<F8B:L8C9$SMPB9XN27:'[
MM7SH_6OQ-^/6X/V$G&_F1H?S6;\6W]*Z_P#+S6OG<KXUSZ,^[5\Z/UK\3?CU
MN#]A(_,C0_FLWXMOZ4_+S6OG<KXUSZ-Z.%[-%R[7%:7<=Y<<(LVM*^/'A7'9
ML^*VKN51-&I;^N;:Z]2J.E:UJPWTK6M.E>G6OG5ZR=)Q\&QF9IYXHC_7/?>D
M>KO5</"O9>)[-<_Z([SP>9^SB<[\>9D2L:R[CUG[:/3'@V;.,NLUY?I3P:5H
MMC*]?V2RL+4IQ7;3WP52J6ZUK6E:T37WL^L70KDX7:,Q;GEFFF8_RUS/L/"]
MZO\ 6[<8VZ[%<<U543_FIB/9<Z-X^6GSKX[-2YVT>-.QX5C@MKD2\IQ6!$V-
MB<2(A*W/7+ADNO)N46>TL5:155?7'HZT4]"TI5UH=%DMY-#U"8IRN9MS7/N:
MIZ%7:BN*9GM8M!G=W=:T^)JS.7N11'NJ8Z=/;FG&([>#1HW;2@      /ZQY
M#\1]B5%?>C2HSS<B-)CN+9?COLK2XR^P\VI+C3S3B:*2I-:*2JE*TKU$Q$QA
M.V)(F8G&-DPL3/*2YK_];/$C%\FR6Y4F;@UDY'UKM]+RVZ3;ED-IM\9RTYLX
MRBB*U8SFR+;EK<2A#/ODF8RW3HQ7I7K>S1?N75JK5N,,G=\.WR1$SMI][.SE
MPZ,SPI\W6UC[XTJFY<G'-V_ N<\Q&RKWT;>SC'$Z?',ND
M         "K(WW\^FZ/I9V-\L+P6AR'H-GS5'DPK3GO3;WG:_*EB<RF*
M#8CCOQ/Y"\L+SD6/<>M:739=YQ.V1;SD,&V73';6Y;+9-EU@Q9;KF17BSLNH
M>E4JBE&U+52OX:4IZ37ZAJNGZ513<U"[%JBN<(F8F<9C;Q1+/R&EY_5*ZK>0
MMS<KHC&8B8C")[,PVO\ Y-GF8_93RWXVZQ_UP:K^L-VOM5'BU_NMI_26\7V6
MOQJ/WC^39YF/V4\M^-NL?]<#^L-VOM5'BU_NG]);Q?9:_&H_>?$N?E%^9%:7
M6V97$O8[JW&_%36V2,4O35$]RD=''[-D<]AISJG^XI25].E>G2M*GW3O;NY7
M&,9NWV^E'?B'Q5NKO#3.$Y6YVNC/>F6,LB\N?GKBR'W;OP\Y&59C..MR'[1J
M7,LCCM480MQU]<C';3=6:0T-MUK5_N\#I_W_ $T,FWO%H5W91G,OC/+<ICOS
M&WFX6-<W?URUMKRF8PCDHJGO1/=X&M.8:PV5KUSP<^UYG.#O>)X/A9AB5_QE
MSQO3_A=EZM\)7B>YK[GIU]!LK.9RV8C&Q<HKC]FJ*N],M==RV8L?+VZZ.M3,
M=^'ACW>(          3 _9Z_,!D9AC\W@WM2^UD9!AMMF9'H&XW!VJY5TPV)
MXLO*==>L.K[GW\1[O?"UM>[<][%RFZ50Q!:21%ZP- BS<C6\K3A;KG"[$<57
MN:_?<%7[6$\-4I7W#UV;MN=%S-7QE$8VIGCI]U1[WACFQXJ82C",4D@
M                              $"#SV^7JN27,FZ:WQRZ4FZRXS-W/6E
MA3'754.=GKTF,[M6_)ZU52K]+];F+-W)K5M;-D;<1_XBJJG?<;2/NW1XS-R,
M,SF<*YY8I]Q'<F:O?8(/WUU7[PU><O;G'+9;&B.>KW<]V.C[UQ/.T<>
M  L2/)\Y;?\ 5OPEUU>[[<JS]F:I;1I_9RGW7'ILR]8A!AMV')93SZJORW\M
MP]^!.DOUI1"[DY*;3U\*I7O>[2?NG6KE%$89:[\91S15.V/>U8Q$<F'*GO=3
M5?O71[==<XYFU\77RXTQLGWU.$S/+CR.HYS#I0
M            $-[VFSY]>,?T39=\L&B8/5IZ#F?.T^2B7UC>FY;S57E(R)):
M.0     +6+ ?S$PKX)8Y^)X95K,?+U]>>_*S=CY"CJ1WGK3Q>H
M              5T_P#)L\S'[*>6_&W6/^N"PW]8;M?:J/%K_=0%_26\7V6O
MQJ/WC^39YF/V4\M^-NL?]<#^L-VOM5'BU_NG]);Q?9:_&H_>/Y-GF8_93RWX
MVZQ_UP/ZPW:^U4>+7^Z?TEO%]EK\:C]X_DV>9C]E/+?C;K'_ %P/ZPW:^U4>
M+7^Z?TEO%]EK\:C]X_DV>9C]E/+?C;K'_7 _K#=K[51XM?[I_26\7V6OQJ/W
MC^39YF/V4\M^-NL?]<#^L-VOM5'BU_NG]);Q?9:_&H_>/Y-GF8_93RWXVZQ_
MUP/ZPW:^U4>+7^Z?TEO%]EK\:C]X_DV>9C]E/+?C;K'_ %P/ZPW:^U4>+7^Z
M?TEO%]EK\:C]X_DV>9C]E/+?C;K'_7 _K#=K[51XM?[I_26\7V6OQJ/WC^39
MYF/V4\M^-NL?]<#^L-VOM5'BU_NG]);Q?9:_&H_><R#I7.      ;(\=>(7(
M_EG-RJW<>-7779LS"8MIFY2Q:[KC=K5:(M\=GL6IUY61WJS(>I,=MC]$T:JY
M5/AU[J4ZTZZ[4=7T[2J::M0NQ:IKF8IQB9QPPQX(GEAL-/TK4-4FJG(6IN31
M$=+"8C#''#AF.26TW\FSS,?LIY;\;=8_ZX-7_6&[7VJCQ:_W6S_I+>+[+7XU
M'[Q_)L\S'[*>6_&W6/\ K@?UANU]JH\6O]T_I+>+[+7XU'[Q_)L\S'[*>6_&
MW6/^N!_6&[7VJCQ:_P!T_I+>+[+7XU'[Q_)L\S'[*>6_&W6/^N!_6&[7VJCQ
M:_W3^DMXOLM?C4?O'\FSS,?LIY;\;=8_ZX']8;M?:J/%K_=/Z2WB^RU^-1^\
M?R;/,Q^RGEOQMUC_ *X']8;M?:J/%K_=/Z2WB^RU^-1^\?R;/,Q^RGEOQMUC
M_K@?UANU]JH\6O\ =/Z2WB^RU^-1^\?R;/,Q^RGEOQMUC_K@?UANU]JH\6O]
MT_I+>+[+7XU'[Q_)L\S'[*>6_&W6/^N!_6&[7VJCQ:_W3^DMXOLM?C4?O))_
MD(\0N1_$S$>2MNY#ZNNNLIN;9'K*;BS%TNN-W15WBV.V9HQ=7658Y>KRAFD-
MVYL451VK=5>)3MI7I7I'&_>KZ=JM[+5:?=B[3137%6$3&&,TX<,1R2D+<?2M
M0TNUF*<_:FW-=5'1QF)QPBK'@F>6$@DX!W8
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
MCF,M/3CJ^[CN>%[V'8;DZG]0UBFQ7.&7S$=">M[B>[X/OD^8@=.
M                59&^_GTW1]+.QOEA>"T.0]!L^:H\F%:<]Z;>\[7Y4L3F
M4Q0    2;O9D_GUY.?1-B/RP=(T]9?H.6\[5Y*1O5SZ;F?-4^4F0D/I:   #
M^$F+&FQWHDR.Q+B26U,R(LEEM^.^TNG:MIYEU*VW6UIKTJE5*TK0_8F:9QIG
M"8?DQ$QA.V&FFV_+HX,;Q;DTV1Q;T_<YDRBDRKY8<6CX'E+]%=U?\3+L!7C&
M45K2JZU37USJFM>M.E3<93>+7,C,?5LU>B(XIJZ5/BU]*GV&IS6@:+G<?K&6
MM3,\<4]&KQJ<*O9<=.0OLV&B,I:FW;C7N'--3WFK;ST?%=@1V-BX4_(2G_9H
M,6Z1ZV++[!%<5_XDA]Z]N)_"EJO]T[#3_6/GK4Q1J5FB[1^M1X%79PVTSV(Z
M/9<EG_5YDKL35IUVNU7^K5X=/=V51V9Z2.ERV\K_ )D<,O7;MM76$B\:]BO5
M;;VSKM]S,=>K;]S1#]RN$2,Q=\20XXOL12]PK:IU=*T;HNG2M9#TG>;1]9PH
MRMV(S$_]NOP:^U'!5[V9YW :INWJ^D8U9JWC8CW='A4]N>&GWT0Y]&_:(
M   !D;4&U<ST;M' MOZ\NCEGS77.46G+,>G(4Y1OUZTRD2*PYK;3C=95JN;%
M%QID=5?#DQ7G&ETJA:J5Q\WE;.>RMS*9B,;-RF:9CFGDYXX8GBG:R,IFKV2S
M-&;R\X7K=451V8Y>:>"8XXV+-CC7OG#^3VB-7[ZP5VE<=V7BD"_MPZO(D/V2
MZ^[A9%C,YUNB4+N6,9#$E6^35-.VK\954]4]*E:M2R%[3,]=R%_Y2U7,=F.&
M*HYJHPF.:5B].SUK4LE:SUCY.Y3$]B>.)YZ9QB>>&<3!9H
M                   &B?F2\L(_#/A]M;<<:6S'S=VV5PC5+#M&7%2MG9>Q
M*@8R^B,__A36<<0A^\R6*]/%AVUY-*]:T-YNYI4ZSJ]K)S'Q&/2N=2G;5V,=
ME,3RU0TN\.J1I&DW<W$_'8=&CKU;([FVJ>:)5LDR9+N$N5/GRI$Z=.D/S)LV
M8^[)ES)<EU3TF5*DO*6](D2'EJ6M:U54M5:UK6M:ECHB*8BFF,*8X(5ZF9JF
M:JIQJGAE^<_7X       [E>0;RTIQ^YC,:ER2Y>J:]Y.086 RJ/OI9A0=DVM
MV5-UE='?$6FBG9\V9,L;:4TK5;UY;K7T(]'$;^:3]X:/];MQCF,M,U\\T3LK
MCM1A5[UVFX^J?4=6^JW)PL9F(IYHKCVD]O;3[Y/%(+38
M                   AO>TV?/KQC^B;+OE@T3!ZM/0<SYVGR42^L;TW+>:J
M\I&1)+1R     !:Q8#^8F%?!+'/Q/#*M9CY>OKSWY6;L?(4=2.\]:>+U
M                                *G M6J^     !*;]F&_/OE_\$M.?
MCC81%_K,^0RG7N=ZA)?JX^7S?4M]^I+T(D2J
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
M&W;PS8K1[N?OZ;:NZG1%&=FGPH[TS'N9F-LT\4[-G!&U1JVS
M          ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_\ <5WJ6_(AQO.P
M<D    #;'@1^_1PN_BRXY_7!AQJM>_ \[_*7OX=3::'^-9/^:M?Q*5F\5I6,
M                       %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0K=JO
MXGF?/W/+EKT;!@     Z;^39_4QXI_"W+?JQS@YK?#^VLUU*?+I='NE_<65Z
M]7D5+%@KRGT     #\\R'$N$25 GQ8\Z#.COPYL*8PU)B3(DEI3,F+*C/)6S
M(CR&5J0M"TU2M-:TK2M*G[$S3,54SA5'!+\F(JB::HQIGAA"B\[7RIK=QJNK
M_*CCMCE8.B,KO"(^Q\*MB**@ZCS"\R^R#<++$;12MOUWE,QZC+3/I9M5Q6F,
MW5$>1$8:F?<O>JK4J?NO4*L<]1'@53PW*8X8GEKICQHV\,3,P]OCNQ3IU7WG
MD*<,C5/ATQ[BJ>"8Y**O\L[."8B(ZI(;@0    ?MMESN%EN5OO%IF2+==;3.
MB7.V7"&ZIB7!N$!]N5"F17D5HMF1%DM)6A5*TJE2:5H?E5--=,T5Q$TS&$QR
MQ+]IJJHJBNB<*HG&)Y)A9N\)N0\/E9Q3T=OMA;%;AGN#6Y_*F(R4(8@YW9%O
MXYGUO8;11-$18696B<VSU2CN82A7;2BJ4*TZUI\Z5JM_(3[6W7/1YZ9VTSVZ
M9C'G6,T?/QJ>F6<]'MJZ(Z7-5&RJ.U5$]IM*:MLP
M  !5D;[^?3='TL[&^6%X+0Y#T&SYJCR85ISWIM[SM?E2Q.93%    !)N]F3^
M?7DY]$V(_+!TC3UE^@Y;SM7DI&]7/IN9\U3Y29"0^EH      !^>9#B7")*@
M3XL>=!G1WX<V%,8:DQ)D22TIF3%E1GDK9D1Y#*U(6A::I6FM:5I6E3]B9IF*
MJ9PJC@E^3$51--48TSPPC>>9'Y"NO-LV^_;?X76FTZSVNTB1<[OIUEV/:M:;
M!<0CO6UBB'EL0-<Y._2E:-MH4BQR5]J5-PE*=E*D;=S?O,92JG*:S,W<KP1<
MX:Z.MQUT_P":/VMD(^WAW(L9JFK-Z1$6\UPS;X**NKQ43_EGFVRAL91B^1X3
MD=\Q#+['=<9RG&;K.L>0X]?(,BV7BRWBV2'(EPMMRM\MMJ3#F0Y+2D.-K312
M54)AM7;=^W3>LU15:JB)B8G&)B>"8E$EVU<LW*K5VF:;M,S$Q,83$QPQ,/A'
MV^      )<7LUG*)ZX6;<O$#([BIU=@JG=6LF)#SKBV[3<)-NQO8UGB^)_A1
MX<*[O6F<RPW7JIZX3'>W^^HB;UD:7%-=G5[<>V^+K[,8S1/;CI1,\U,)3]7F
MI351>TJY/M?C*.Q.$5QW>C/;F4JTBU)H
M     $(3VAGEW7<')FQ\:\6N57\'XX0G*9'2+)2Y!N^VLMA0)U[4Y1A=69*L
M/L'JEM1W]78DYRXM=$]RJ5FOU?:3]3TVK4KL?'YF=G+%NF9B/&G&>>.C*&]_
M-5^MZC3IUJ?B<O&WGKJB)GQ8PCFGI(]9(#@P       #]]JNMRL5TMM[LTZ5
M;+O9Y\.ZVJY07EQYMON5OD-RX,Z)(;JEQB5$E,I<;6FM%)6FE:>FA\U4TUTS
M17$31,83$\$Q/##ZIJJHJBNB9BN)QB>28X)67O GE#:^8G%#46](LB(N_P!_
MQYJT;!@1:MI]YMD8WTL^:6]<9#;-8;3UWC*F1&ZH3W0)3#B:50M-:UMU[3*M
M'U6]D9Q^#IJQHGEHG;3//LV3SQ*Q&AZE3JVEVL[&'3JIPJCDKC95'=VQS3#<
M,U#;                                  0WO:;/GUXQ_1-EWRP:)@]6
MGH.9\[3Y*)?6-Z;EO-5>4C(DEHY      M8L!_,3"O@ECGXGAE6LQ\O7UY[\
MK-V/D*.I'>>M/%Z@                                   %3@6K5?
M    E-^S#?GWR_\ @EIS\<;"(O\ 69\AE.O<[U"2_5Q\OF^I;[]27H1(E4
M                                  \YF&6X[@.)Y/G.7W6+8L4PW'[Q
ME.37J:JJ(=IL%@M\BZW>Y254I6M&(4"*XXKI2M>B?12M3TLVKE^[38LQ-5VN
MJ*:8CCF9PB.W+SNW;=BU5>NS%-JBF:IF>*(C&9[4*RKF)R1R+EOR5VWR R1+
MD=S/LH?D6*TN+HJF/X;:F6;)A6/4JGHTIRS8M;HC+SB4HI(D)<>K2BG%%E='
MTZWI.FVLA;VQ;IVSRU3MJGMU3,QR1LXE=-6U"YJNHW<]<]W5LCDIC93':B([
M,[6M!LFN        -\?+3Y6O<-^8VIMO2YCT;")-SK@FU&6U]K<G6V9.QK=D
M$A]'<CUC\FY"8UY9:JI-')5L:I6M*=31;R:5&L:/=RD1C?B.E1UZ=L=W;3/-
M5+=[NZG.DZM:S<S\3CT:^I5LGN;*NS$+)B/(8EL,2HK[,F+)9;D1I,=Q#S$A
MAY"7&7V'FU*;=9=;5125)K5*DUI6E>A7*8F)PG9,+"1,3&,;8E_8_'Z
M                        8FWY\Q6Z?HFV-\C[R9>0].L^=H\J&+GO0KWF
MJ_)E5DEH%:0     )-WLR?SZ\G/HFQ'Y8.D:>LOT'+>=J\E(WJY]-S/FJ?*3
M(2'TM       /R3X$"ZP)MKND*)<K9<HDF!<;=/C,S($^!,97'EPIL20AR/*
MB2H[BFW&W$J0M"JI52M*UH?M-55%454S,51.,3'#$\L/RJFFJF::HB:9C"8G
M@F$:;S)?(0P;8T#(]R\);9;M?[(;1*N]ZT8AQBW:[S9:>^3(3@-7>R/@&2/]
M549@]R;$^KPVT)M]*+=<DG=S?R_EZJ<GK4S<RW!%WAKIZWZ\<_MH_:X$=[P[
MCV<Q35F]'B+>8X9M\%%75_5GF]K/[/"AWY-C.189D-[Q++K%=L8RC&[G-LN0
M8[?K?*M5ZLEWMSZXL^V72VS6F9<&=#D-J0XTXA*T*I6E:$O6[MN];INV:HJM
M51C$Q.,3$\$Q,<,(GN6[EFY5:NTS3=IG"8F,)B8X8F.*7Q#[?      $O#V:
MWE Y=L7W+Q$R&X4<D8H^C<NM8[R^KU+!>9,+']A6N/W5IVP[7?G+7,;;32M:
MNW22NOH(E]8^F11=LZM;C97\77V8VT3V9CI1[V$J>KS4NE;O:5<G;3\91V)P
MBJ.U/1GMRE/D7),         '&;SF?,5IPGT2C!];WAICD9NJ#<K3@ZHSR%3
M]?XHA*H>0[.>9I1=6)<1;GJ=E\7L2]<EJ?31U$&0W7L=SMWOOK/?#YF/_769
MB:N2NKBH_35S;-G2B7([W:_]SY+X'+S_ .PO1,4\M-/'7^BGGV[>C* :\\[(
M==D2'7'WWW%O///+4ZZ\ZZJJW'77%U4MQQQ:JU4JM:UK6O6I/41$1A' @V9F
M9QGA?S      !_1EEV0ZU'CM./OON(99990IUUYUU5$-M--HHI;CCBU4HE-*
M5K6M>E!,Q$8SP$1,SA'"E:>5QY$'OBSCV_\ G/CK[$5=8UXPGCE<D.1WY+54
M)?A7?<+=%-R(S=552XC'*=JU4I1-QK2E78-8LWHWYZ,U9#0ZMO!5>CV8M_O^
M+Q5).W:W)Z44Y[6J=G#3:GOW/W/&XZ4LFV6RVV6W0;/9K?!M-IM<2/ MEKMD
M2/ MUN@Q&DL184&%%;:C1(D9E"4-MMI2A":4I2E*4(IJJJKJFNN9FN9QF9VS
M,\LRE"FFFBF**(B*(C"(C9$1R1#]Q\OH                  &,=PZ9U=O_
M %[D&JMQX38\_P !R>/X%VQZ_1O&84M'546X0)+2FIUHO-N>K1V).B.LRXCU
M*.,N(72BJ9.3SF:R&8IS63KJMWZ9V3'>GBF)XXG&)XX8V;R>6SUBK+9NBFY8
MJX8GOQQQ,<4QMCB0:/-#\GO8W""Y7':FKJWK9G&"?-I5&1N1Z2LJU6],DI9A
MV38S<&.U'=M3SS[;,.^M-M1I#RJ,R&XSZV:2)OW8WOR^MTQE<UT;6IQ'![FO
MGHQX^6GACAC&,<(8WDW3S&C53F<MC<TV9X?=4<U>'%R5<$\$X3ACQ5.S<>
M  #]$.'+N$N+ @19$Z=.D,0X4*&P[)ES)<EU+,:+%C,I6](D2'EI0A"$U4M5
M:4I2M:GY,Q3$U53A3'#+]B)JF*:8QJG@A-,\G[R;+9H2WX_R9Y58Q"NN])S<
M*\ZZUK>8S,R#IECN:F0+]?(KM'&).TEU2A;::T4FPT]">LWN5&AK>[?"K/U5
M:9I=4QD8V5UQPW.6(_8\KJ\,O[J;I4Y&FG4=3IB<[.VBB>"WR3/[?D]G@D=D
M=)                        $ #SZ_ZF.XO@EJ#ZL<9)[W$_MJSU[GER@S
M??\ N*[U+?D0XWG8.2    !MCP(_?HX7?Q9<<_K@PXU6O?@>=_E+W\.IM-#_
M !K)_P U:_B4K-XK2L8                       *O7ES^]=R=_B%W3]9&
M2EF])_"LM_+V_(A6[5?Q/,^?N>7+7HV#     !TW\FS^ICQ3^%N6_5CG!S6^
M']M9KJ4^72Z/=+^XLKUZO(J6+!7E/H      #QFQ=>X=MG \NUGL*Q0LFPC.
ML?N>,9/8IZ*JC7*SW>*Y$ELU4FJ78[Z4.=[+S:D/,/)2XVI*TI53VR^8O92_
M1F<O5--^BJ*J9CBF/^N#CX'CF+%G-6*\M?IBJS73,3$\<3_UVE:+S0XR9#P]
MY,;5X_9 \_/1A&0*_)F^OMH;7DN$7EAJ\X;D*J,TI'3*N6/3F%2FV^J(\RCS
M/7JW4LEHVIV]7TVUJ%O9TZ?"CDJC95':F)PY8PE7?5]-N:3J-W(7-O0JV3RT
MSMIGMQ,8\DXPU=-FUH    )D7LT>\W<ATMOSCU<YE7']:9S9-C8PU(>4MVF/
M[(MK]JO-O@-555+<"T7_  RDERE*4Z/WBM?3W>B'_63D8MYVQJ%,;+E$T5=F
MB<8F>>8JP[%*6O5WG9N9._D*IVVZXKCL5QA,1S1-./9J2;2-$C
M             "K(WW\^FZ/I9V-\L+P6AR'H-GS5'DPK3GO3;WG:_*EB<RF*
M    "3=[,G\^O)SZ)L1^6#I&GK+]!RWG:O)2-ZN?3<SYJGRDR$A]+0
M   C]>=QY8-IY)ZVO?*#2^-(9Y$:RL;MQRNUV2(BDG<F!6:,VJ9#EQ&&_%N6
M=8A:XRG;4\BE94V(VNWJH^KU!,?OMRMYJ]-S-.F9RK_U]VK"F9_[=4]ZFJ?;
M<43X6SPL>%WRW;IU'+SJ63I_Y]NG&J(_[E,=^JF/:\<QX.WP<(.I-J&0
M -[?+-WZ]QLYS<=-F.3*0["O/[=A&:+=6I,6F%;%[\(R.7+0FO\ C-V6#?*W
M%M->O^/#;5^&E#1[RY"-2T/,9;#&Y\'-5/6H\*.[,8=B6[W=STZ=K67S..%'
MPD4U=6OP9[D3CV86417!84                                &K_,[D
MI8.(O&7;F_K[6$\]@V+RG,7M,UU3;>1YU=5(M&$X[1+5?65MW7))L=#]6J*4
MS%\5ZO1#:E4V>C:;<U;4[.0HQPKJ\*8XJ8VU3VHB<.6<(XVMU?4;>E:==SU>
M&-%/@QRU3LICMSACS8SQ*R[*LHOV;Y1DF:95<I%YR?+[_>,HR.\3%=\NZWZ_
MW&1=;Q<I2^E.^1.N$MQU=?[5+J64M6K=BU39M1%-JBF*8CDB(PB.U"NEVY7>
MN57KLXW*ZIF9Y9F<9GMR^">CX         $E_P!G%Y;?D1N+/N(F47*J,>W)
M"D9[K9I]URK,396'VI;F26N&UW49:<RS!(2I#JU4ZU58&D)]TYTK&WK%TGX?
M)V]6M1\99GHU]2J=D^]JG#W\I$]7^J_ YNO2KL_%WHZ5'7IC;'OJ8Q]["9@0
MZEP                                 "&][39\^O&/Z)LN^6#1,'JT]
M!S/G:?)1+ZQO3<MYJKRD9$DM'(     %K%@/YB85\$L<_$\,JUF/EZ^O/?E9
MNQ\A1U([SUIXO4                                    J<"U:KX
M  $IOV8;\^^7_P $M.?CC81%_K,^0RG7N=ZA)?JX^7S?4M]^I+T(D2J
M                               1WO:'N7OZ)>.&.\8\3NOJV<<AYWK6
M6HCJ_P!IMVH,5EM2;FVXXA:'8:\PRIN'#;KZ428,6X,JITK4D+U?:1];U&K4
M[L8V,O'@\]RK@\6G&>:9IEP6_NJ_5=/ITZU.%[,3X7-;IX?&JPCGB*H0D2:4
M.          !/_\ (ZY:?]3/"?&,6R&Z^O[*X[/1-296F0]XMPFXS A4=UGD
M3]*HHNK4[%6J6VKJU+=D3+/)<77JH@3??2?NS6JKMN,,MF/C*>2*IGPX[56W
MFBJ(3GN9JGWCH]-JY..8R_@5<N$>TGMT[.>:9=D#CW6@
M            &)M^?,5NGZ)MC?(^\F7D/3K/G:/*ABY[T*]YJOR959):!6D
M    "3=[,G\^O)SZ)L1^6#I&GK+]!RWG:O)2-ZN?3<SYJGRDR$A]+0
M   CS>>)Y8ELY#:\O?+'3-B9C;YUACRYN>6BV1Z(<VWKNP1G'I2W8[-$IEYU
MAEM0IV&_TK(G6YE4&OBJ:@(:D'<G>:K3\Q3I6<JQR-VK"F9_[=<_Z:IX8X(G
MPMF-6/![Y[N4Y^Q5JF4I_P"=;I\*(]W1'^JF.">&8\';A3A"))J0V     !O
M]Y76_7.-_._CML%^<J%CMRSF%KO-5+>\*'7$-E45A=UEW+JI*7(=@<O#5TZ5
M_ [ 0JE*U32AH=Y\A]XZ%F,O$8W(HZ=/+TJ/"C#LX='MM[NUGIT_6\O?F<+<
MUQ15U:_!G'L8]+M+)$KDL&        8[VWM3"='ZRSK;VQ[NW8\'UWC-TRK)
M+DOL4XW;[7&6_6-"86XUZ[=;B]1$:'&2KQ)4IUMI%*K6FE<C*96_GLS1E,M'
M2OW*HIB.>>7DB.&9XHVL?-9FSDLM7FLQ/1LVZ9JF>:/TSP1''.Q6H\Q>4F=<
MR.0VP=^9XXXQ*RNY>KXWCU)+LB#AN$VONBXMB5L[U>&ABU6VE*OK;2VF5.=?
MDJ31Q]?6R&CZ78T?3[>0L<%$;9XZJI]M5/9G@Y(PCB5YU;4KVK9^YGK_  U3
MLCBIICVM,=B.'EG&>-K$;-K0     /T0X<NX2XL"!%D3ITZ0Q#A0H;#LF7,E
MR74LQHL6,RE;TB1(>6E"$(352U5I2E*UJ?DS%,355.%,<,OV(FJ8IIC&J>"$
MT_R>_)PM^@(./\F^4^-0KIO:>Q&NVN];7F,Q-@Z9C.I0_$OE\BO)=CR-I.IJ
ME3::TJFPT]"?]N[E1H9WOWPJS]56F:75,9&-E=<;)N<T?L>5U>&7]T]TJ<A3
M3J.ITQ.=G;31.V+?//[?D]G@D<$=I                       /E7VQ67)
M[+=\;R2T6V_X]?[;-LU\L=YA1KE:+Q:+E&<AW&V7.W3&WHDZ!.B/+:>9=0IM
MQM54JI6E:T/JBNNU7%RW,TW*9B8F)PF)C@F)XIA\UT47*)MW(BJW5&$Q.V)B
M>&)CCB4)+S@O)]N7%JY7KD?QPLLZ[\;[O.5+R[$8B9$^Y:/N4^12E*5K6KLJ
M;K2;*=HB)+753EL<4F-)55-67G9JW1WNIU2FG3M1JB-1B/!JX(NQ'>KCCCCX
M8XXB'-Z]U*M-JG4-/B9T^9\*GAFW,_Z.2>+@GBE'R._<(  /J6*Q7K)[U:,;
MQNT7*_Y#?[E"LUCL=FA2;E=[Q=[E);AVZV6RW0VWI<Z?.EO(:99:0IQQQ5$I
MI6M:4/FNNBU1-RY,4VZ8F9F9PB(CAF9XHA]445W*XMVXFJY5.$1&V9F>"(CC
MF4VWR??)]MO%JVV7D?R/LL&[\D+O!3+Q'$9:8\^VZ/ML^/6E:4K2KL6;LN;%
M=JB7+153=L;4J-&5557GG85WNWNJU2JK3M.JF-.B?"JX)NS'>HCBCCX9XHB8
M]U-U*=-IC4-0B)U"8\&GABW$_P"OEGBX(XY2#C@'=@
M     !  \^O^ICN+X):@^K'&2>]Q/[:L]>YY<H,WW_N*[U+?D0XWG8.2
M!MCP(_?HX7?Q9<<_K@PXU6O?@>=_E+W\.IM-#_&LG_-6OXE*S>*TK&
M                 "KUY<_O7<G?XA=T_61DI9O2?PK+?R]OR(5NU7\3S/G[
MGERUZ-@P     =4?),MC5W\S_BU%><<:0U<MI7-*FNWNJ[9-'[-O,=NO>E5/
M#=?@)0O^WL57I6E>E3E]]*IHW9S4QR41W;E$?I=-N=3%>\F6B>6N>Y;KG]"P
M^*^)Z        (H_M,/'EARV<?N4]IA43*BS;GHW-Y;;-5+D1);-RS?7BW7$
M=*--P'XN0MJ4NE>]4II-*TZ4HJ5/5MJ$Q5F-+KG9,1=I[6%-?=\#N2C'UB9"
M.C8U.B-L3-NKV:J.YX7=A$H)71:    #N+[/AM-S O,+LF&N2ULP=T:NV)@:
MXZJJ]6>N%DMS&SK>ZY3I5MN0TW@3[32Z]*_XZFTUZN=JN)W_ ,K\/N_5>P\*
MS=HJ[4ST)\J.YS.SW$S/P&O4V<?!O6ZZ>W$=./)]GG3RB"DV@
M           "K(WW\^FZ/I9V-\L+P6AR'H-GS5'DPK3GO3;WG:_*EB<RF*
M  "3=[,G\^O)SZ)L1^6#I&GK+]!RWG:O)2-ZN?3<SYJGRDR$A]+0
M  5ZWG/<08'$GFGED?$+5[UZMW/!IMS (L>/X5LLZ[[/F1LRQ2"I'2,VS8<L
MBR7(\9NB?5+9,AH[>G:I5@-S=7JU;1J)O3CFK,_!U\LX1X-4]FG#&>.J)0/O
M?I5.EZQ5%J,,M>CIT\D8SX5,=BK'".*)AR9.K<N    #_J5*0I*T*JE2:T4E
M2:U2I*DUZT4FM.E:5I6GHJ!:$<2MK*WGQ>X^;??E(F7#8FGM?91>WD*HOMR2
MXXQ;G,FC+52M:5>A9!22ROT^A;=2LFK97ZCJ>8RD1A3;O5TQV(JGH]V,)61T
MO-?7=-L9N9QJN6J9GLS$8^SBV&->SP
M AT^T>\O?RKV3K_AMB5V\2RZQ9A[*VNQ&5_ANY_D=J6G";%,KWT5XV.85<W)
M]4]OAJI?6JUK5;71$O\ JZTCX++7-8NQX=W&BWU(GPI[=48>]GE1-ZP=5^%S
M%O2+4^!;\.OK3'@QVJ9Q]]",,28C@          /?ZHV9E>F-FX!MK!9WO=F
M&MLOQ_-<<E*[U,INV.7.-=(K,QI"VZRK=+7&\*2Q6O8_'6MM75*JTKX9K+6L
MYEKF4OQC9N433/8F,.[R3Q2]\KF;N3S-O-6)PNVZXJCLQ./<Y8XX6>.@=T8G
MR*TIK#>6#N=V,;0PVRY;;XZGV9,FU.W&*E5SQ^X.L?X-;MC=V0_ F)3Z$2HS
MB?["LV?R5W3L[=R-_P"5M5S3//AP3'-,83'-*QV1SEK4,G;SMGY.Y1%4<V/#
M$\\3C$\\,OF(RP                                0WO:;/GUXQ_1-E
MWRP:)@]6GH.9\[3Y*)?6-Z;EO-5>4C(DEHY      M8L!_,3"O@ECGXGAE6L
MQ\O7UY[\K-V/D*.I'>>M/%Z@                                   %
M3@6K5?      E-^S#?GWR_\ @EIS\<;"(O\ 69\AE.O<[U"2_5Q\OF^I;[]2
M7H1(E4                                  !^>9,B6^)*GSY4>#!@QW
MYDV;,?:C1(<2,TIZ3*E27E(9CQX[*%+6M:J)0FE:UK2E#]B)JF*:8QJG@A^3
M,4Q-54X4QPRK6O,9Y83.9_+K:FZ6I4QS#'+DG$-5P9G>FMKUEBBWH&-);C.)
M2N"Y?5JD7B4Q7N\.=<GZ=:T+'[NZ5&C:3:R4Q'PV'2KGEKJVSV<-E,3R4PKS
MO!JDZOJMW.1,_ X]&CFHIV1V,=M4QRS+1TW;3          !V"\D7EI7C!S<
MP^Q7^Y>IZTY!HBZ=S.DA]3<"!>[S.:7KC)G456W%0[:\QJS!<D/*HW$MMUF.
M5KZ#D=]=)^\]%KN6XQS.7^,IY9B(\.GMT[<(X9II=7N;JGW;K-%%R<,O?^+J
MY(F9\">U5LQXHJE8&D!)U                             ,3;\^8K=/T
M3;&^1]Y,O(>G6?.T>5#%SWH5[S5?DRJR2T"M(     $F[V9/Y]>3GT38C\L'
M2-/67Z#EO.U>2D;U<^FYGS5/E)D)#Z6@          KP_.,X@PN(/-/-+-B=
MJ1:M6[8B(VYK6)%CH8MEGM^23YS&1XI!0Q_LT:/C&609C4:,GM4Q;'(G5/1:
M5*L%N?J]6KZ-17=G'-6I^#KY9F(C"J>M3,8SQSB@7>W2HTK6*Z+489:['3HY
M(B9G&F.Q5$X1Q1@Y6'4N9    !_IMQQIQ#K2UM.M+2XVXVJJ'&W$5HI"T+36
MBD+0JG6E:>FE1P[).#;'"M&.+^T?TW<;]#;?4YWR=EZAUYFEPI6G13-WR#%+
M7<;S$<I12Z>-"NK[S*^BE)[T5Z5K3I6M8M3ROU+4;^3XK5ZNF.Q%4Q'=A9/3
M<S]<T^QF^.Y:HJGLS3$S[+.I@LT      !$A]HQYO+FW/%^#6 W9:8EJ]Z-B
M[X<B.T[)-R?:9N&N<#E5;<HOLMT1RE^FLN)4VMR1;'$JHME="6/5YHG1IJUR
M_&V<:+78X*ZNW[6)YJN5%F_^LXU4Z+8G9&%=SL\-%/:]M/9IY$4XE-&0
M  "9)Y(?E-M:NM6.<R>26-47LZ^0F[II/75^@)5^CFQS6H[\'8F009C-'6-@
MW9BJJVV.I-*V>$Y1Y?6<\E,"'M]=ZYS5=6CZ;5_QJ9PN5Q/MYCAHB?U(XY]U
M.SVL>%+>YNZ\9:FG5]0I_P"35&-NB8]I$\%<Q^M/%'N8V\,^#)K(U2*
M                   'X;G;+;>[;<+->;?!N]GN\&7;+K:KG$CS[;<[;/CN
M19UON$&4V[%FP9L5U3;K3B5-N-JJE5*TK6A]4U545171,Q7$XQ,;)B8X)B>*
M8?-5--=,T5Q$T3&$Q.V)B>&)CD02/.(\JBX<+\S=W5I>U7&Y<7\[NU4)CI]9
MN$K3>57%Y:TXC>9-6UN5Q"Y.*Z6.>^M2Z5ZPI*JOH9>F3ENAO33K-GZEG9B-
M3MQV/A*8]U'[4>ZB.M&S&(A3>S=FK2+WUS)Q,Z;7/9^#JGW,_LS[F>U.W"9X
M:G;N,?=Q?%\CS;(['B&(6.ZY-E.376#8\>QZQP9%SO%ZO%SD-Q+?;;;;XC;L
MF9,F274H;;0FJE*J?%V[;L6ZKUZJ*;5,3,S,X1$1PS,ONU:N7KE-JU3-5VJ8
MB(B,9F9X(B$Y#RCO*!LO#BV0MZ[\@6?)>3UYA.TM4!MR-=[#I2T3F5LOVRPR
MT>)$N6<W*(Y5NY75JJFX[2U0X2JLUD2)D([V;W5ZQ5.1R$S3ID3MG@FY,<<\
ME,<5/'PSMPB)GW6W4HTFF,[GHBK4IC9'#%N.2.6J>.KBX(V8S/>(X5VP
M                     ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_P#<
M5WJ6_(AQO.P<D    #;'@1^_1PN_BRXY_7!AQJM>_ \[_*7OX=3::'^-9/\
MFK7\2E9O%:5C                       !5Z\N?WKN3O\ $+NGZR,E+-Z3
M^%9;^7M^1"MVJ_B>9\_<\N6O1L&     #K'Y&_\ 5)XO_P#K7_[=]MG*;[_V
MOFO_ !_Q;;J-S/[ERW_D_A5K"PK^G@        Y1>=MK]C8'EJ\ADU9HY<<+
M8P?8%I<55JE(S^,9]C;MV>_Q5MTK5>+R;@U3HJBNKGHHJON%=5N5F)R^\F7_
M %:^E1/OJ9P_S8.8WQL1?W>S'ZU'1JCM51C_ )<5>:6!0,    #>;RRLM?PK
MS!>'EYCK6AR;OW7N)*JA*U*JQG][8P24BM$/,*['(V2+2JO=6E$UK6J5TZH5
MH]Y;47M SE$\67KJ\6.E^ANMW+LV==RE<<=^FGQIZ/Z5E25P6&
M             %61OOY]-T?2SL;Y87@M#D/0;/FJ/)A6G/>FWO.U^5+$YE,4
M    $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^FYGS5/E)D)#Z6@
M    CJ>TC:4BYCQ-UENN)"H[?=,;58M$N;1M?=&PG9]M<M=W2MQ'6G1>76&P
MI3W^YIWJZ5I5714A^KG.S9U6[DIGP+UK'WU$XQ_EFIP/K!R<7=+MYR(\.S=P
MQ_9KC"?\T4H39-"'0     +!GR+\V7F7EHZ)CON5>FX5<MF83+=55?6J+=LC
M)[I:F^BF&4)I&L%YB,T[%.IK1OK57=52$0#OQ8^!WDOS'M:XHJ[M%,3[,2G;
M<N]\-N[8B>&B:Z>Y7,Q[$PZ[').J                              &'
MN06[,1XXZ3V=O/.G%TQ?6&(7;*KA'96EN5=7X3/9:K! 6M*FTW/([P['@1>^
MG9ZQ)1W5HGK6F9I^2NZCG;61L?*W:XICFQX9GFB,9GFAB9_.6M/R=S.WOD[=
M$U3S\D1SS.$1SRK%MO;2R[=VT<_V]GMP7<\PV1EE[S#():E*JWZ_>YSTU<6(
MA5:TCVZ AQ+$9E/1#$=I#::42FE*67RF5LY+*V\I8C"S;HBF.Q$8=V>&>65<
MLWF;N<S-S-WYQNW*YJGLS/>C@CDACHR&.           "7E[-SRV3=L5V=PU
MRR[4K<,3?D[9U(Q+?I1;N-W>5'A;#QRWI4E"*-V?(9$6ZMLI4MUU5UF.=*(9
M56D2>L;2>A=M:Q:CP:_B[G9C;1,]F,:?>TQQI5]7VJ]*U<TB[/A4^'1V)]M$
M=B<*O?3R)3I%Z2P                                0WO:;/GUXQ_1-
MEWRP:)@]6GH.9\[3Y*)?6-Z;EO-5>4C(DEHY      M8L!_,3"O@ECGXGAE6
MLQ\O7UY[\K-V/D*.I'>>M/%Z@
M%3@6K5?      E-^S#?GWR_^"6G/QQL(B_UF?(93KW.]0DOU<?+YOJ6^_4EZ
M$2)5                                   <1//CY=TXY\.;AJ_&[E2+
MLCDT_<=<6Q#$E3$ZWZ[CQ67]H7QM+:T.+8?M4V-9%4ZT]-Z[Z=?#K0[7<72?
MO'6(S5R,<MEL*YY)K]Q'=B:O>N-WVU7[OTF<M;G#,9G&B.6*/=SW,*??(%9.
MR$0           ?Z;<<:<0ZTM;3K2TN-N-JJAQMQ%:*0M"TUHI"T*IUI6GII
M4<.R3@VQPK(WRQ>6#7,CAMJG:MPGHF9[:;=^CW:Z*NMN2F]C88Q&@7BXRT-K
M71A>60%Q;VVBM>J&;DA-?32I7/>;2IT?6+N5IC"Q,].WU*ML1[V<:>S"P>[F
MJ1JVD6LU5.-^(Z-?7IV3/OHPJ[$N@!H&]
M 8FWY\Q6Z?HFV-\C[R9>0].L^=H\J&+GO0KWFJ_)E5DEH%:0     )-WLR?S
MZ\G/HFQ'Y8.D:>LOT'+>=J\E(WJY]-S/FJ?*3(2'TM          !'%]I-TK
M&RSBYJ3>$2,A=[T_M.N-SGZ-UHM&';0M#K%P6M]'6JO RK%;,AM"Z=M*2'*T
M4FO5+DB^KC.S:U2[D9GP+UK&.M1.S_+55W$?^L+)Q=TVUG8]O:NX3U:XV_YJ
M:>ZA5$S(?      L*O(^S9>:^6?QZ]9D4D7#$J[&PF;6CB%U:18=F9;[RQU)
MH\ZXS5C&94%/:OLKTI124T0I'6O^^UCX'>7,8>UKZ%4=NBG'_-BGC<V]\-N[
ME\?;4=.GN5U8>Q@ZRG*.H      PQR)W?B/&S1VT=ZYR^AK&M8XA=,FEL*=2
MP[=IT=ND>Q8["<72J*7/)[_(BVZ)2OH5*E-TKTI7J9FG9*]J6>M9&Q\I=KBG
ML1QS/-3&,SS0P\_G;6GY*YG;_P G;HF>S/%'9F<(CGE6-[<VCF&[=GY]MW/[
MC6Z9GL?*[UE^13/=T9K<;W.=FN1H;2UK]5ML%+B6(K%*]C$9M#:>B4TH67RF
M5LY+*V\IEXPLVZ(ICL1&'=GAF>.5<\UF;N<S->;OSC>N535/9F>]'!$<4,=F
M0QP     )"OD7^6FSR1V#3E+NBP+DZ/U1?VV\)L-SB_^7[0V9:UL2T5D,R$5
M1<<-PE:FW9=*4JQ-N-6XU5+0S,:(_P!^-Y)TW+_=>3JPSMVGPICAHHGO55<7
M'$8SQQ+O-R]W8U"_]YYRG_A6JO!B>"NN._33Q\LX1Q3";T0HF0
M                #Q.R-<81M[ \LUCLG&[;EV"9O99F/Y/CMV9\:%<[9.;[
M'$5JFJ'HTIA=$NQY#*FY$60VAYE:'4(73WRV9OY2_1F<M5-%^BK&F8X8F/\
MK;'!,;)V/',9>SFK%66S%,5V*XPF)XXG_K9/#$[8VJ]SGKY:.WN)/*JUZ)P_
M'LFV1C>W;K5[CK=K7;G;E=LYMLV>B(C%I"(4=#"\VQ:3);C7)I"6TU;6S,[&
MF)+=*3_H.\F4U;2YSUZJFW<LQ\=$SA%,X>VV^YJX8[<;9A!&M[NYO2]3C)6J
M:KEN[/Q4Q&,U1CP=:G@GM3P2E0>5!Y16*<(;-&V_MU%GS7E!D-J2VJ:RAJ;8
M=/6RY0TIN.+X=(55QN=D<FCJV+G>T=OBM=8L3LC*?<F1=O5O;=UNN<IE,:-,
MIG@X)N3'!55R1QTT]N=N&$F;L;JVM&H^M9K"O4JHX>*W$\--/+/%-7:C9CCV
MY.*=B                          !  \^O^ICN+X):@^K'&2>]Q/[:L]>
MYY<H,WW_ +BN]2WY$.-YV#D@    ;8\"/WZ.%W\67'/ZX,.-5KWX'G?Y2]_#
MJ;30_P :R?\ -6OXE*S>*TK&                       "KUY<_O7<G?XA
M=T_61DI9O2?PK+?R]OR(5NU7\3S/G[GERUZ-@P     =8_(W_JD\7_\ UK_]
MN^VSE-]_[7S7_C_BVW4;F?W+EO\ R?PJUA85_3P        :-^9E'8D^7WS#
M;DL,R&T\?]C2$MOMH=0E^)8),J*^E+B5)H]&DLH<;5_>0XBBJ5I6E*F\W:F8
MU_)S'VBCOM+O'$3H6;Q^8K[RM4+'J\@    V(XA..-<LN+[K2UM.M<B-*.-N
M-J4AQMQ&RL:4A:%IK12%H52E:5I7K2IK]7B)TK-1/!]7N>1+/TK9JF6F.'ZQ
M;\N%H.5D61                       %61OOY]-T?2SL;Y87@M#D/0;/FJ
M/)A6G/>FWO.U^5+$YE,4    $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^
MFYGS5/E)D)#Z6@          YM^;YB#6;>6URPM#K"WZ0-?V_+VTMT55;;N
MYCC.<-OTJAUE24,JQ[N77NZ>'175*T]4*Z/=&]-G>/*5QQW)I\:FJG]+GMZ[
M47MWLU1/%;BKQ:HJ_0KE"Q"       )SGLX]V1<N F30T//NJL'(_8EI=0[5
M=6XZWL,UE?:,Q>Y54T84W>DN5[>E/%<7Z.O6M80]8E'1UZFK];+43_FKC]":
M/5_5TM#JC]7,5Q_EHG]+OF<&[@                              13O:
M1>7GJ=IUKPMQ*X='[NN#M_;RHDKI5%LAO3H&N\2F(9<4E:)MQ;E7B2P\E*D5
MAVUY'5*^I*?JYTC&NYK-V-D8V[?9G":ZNU&%,3'+5",?6#JN%-O1[4[9PN5]
MC;%%/;G&J8YJ91(26$6@     9:S[1VS=98-I[8^9XU*L^'[WQF_97K6[/>A
MN^6O&LHN.)WBBFU42['E1IL%N11"J='(4V*^FM4O4Z8EC/9;,W[V6LU1-ZQ5
M%-<<DS3%4>Q.'9B8XF5?R69RUFUF+U,Q:OTS51/+$533/LQCV)B>-B4RV*
M  #9;AYR-O\ Q,Y+:AW]8/6'JX!EL.7?[7&=4TN_X9<4N6C-,>ZT<;15=YQ>
M?*8:JON0V^I#E4U[*4-;J^G6]5TV]D+F'QE$X3R51MIGM51$]AL=)U"YI>HV
ML];_ .W5MCEIG95';B9[:S:Q7*+#F^+XWFF*W*/><8R^P6?*,<O$-7?$NMAO
M]NCW6SW**OI3OCSK?+;=17^U*Z%:KMJY8NU6;L33=HJFF8Y)B<)CM2L9:N47
MK=-ZU.-NNF)B>6)C&)[</OGF^P                               AO>
MTV?/KQC^B;+OE@T3!ZM/0<SYVGR42^L;TW+>:J\I&1)+1R     !:Q8#^8F%
M?!+'/Q/#*M9CY>OKSWY6;L?(4=2.\]:>+U
M          *G M6J^     !*;]F&_/OE_P#!+3GXXV$1?ZS/D,IU[G>H27ZN
M/E\WU+??J2]")$J@                                  *ZSS=^7:.8
M/-/8&38_=47+5^L__P")-5NQ7:N6^?C>*3YWOIE$6J5>#(1F&4RYTYF1V)<7
M;W(K:^O@IZ6%W2TC[HT:W:N1AFKOQE?+$U1&%/O:<(F.7&>- >]6J_>VL7+E
MN<<M;\"CDF*9G&??58SCR81Q.89TSFP    9!U/J_,MU[,P34>O+76\9ML7*
M+/B.-6_N4VR[=+U,:ALO3)%$.4AVV'1RKTJ0JG9'C-K=7T2BM3'S>:LY++7,
MWF)PLVZ9JF>:(XN?BB..=CWRN6O9S,T97+QC>N513$<\_HY9XHVO+Y'CUZQ'
M(;[BF26Z19\BQB\W3'K_ &B71*9=KO5EG/VVZVZ4E"EH3(@SHSC2Z4K6E%)K
MTK4];=RB[;INVYB;=41,3RQ,8Q/;AYW+==JY5:N1A<IF8F.28G"8[4OC'V^
M    2%?9XN6GZ(^3>0<;\GNOJV%<C+8C\G&Y3W;#@;8P^+,GV3PJN(4W&7E.
M.*G05]%(K*EM06_=*HW0C_U@Z3];TRG4;4?'9>=O/15A$^+.$\T=*7>;A:I]
M5U&K3[DX6<Q&SFKIVQXT8QSST4WHA1,@                           #
M$V_/F*W3]$VQOD?>3+R'IUGSM'E0Q<]Z%>\U7Y,JLDM K2     !)N]F3^?7
MDY]$V(_+!TC3UE^@Y;SM7DI&]7/IN9\U3Y29"0^EH          .8WG)XI$S
M#RU.4T"4VPI5JQ3&<KB.O)]U'EXAL'$<D0Y'<HVXMI]YJV+9ZIZ=R'5(56B%
M*.FW.NS9WDRM4<==5/C451^G%SF]MJ+N[N9IGBIBKQ:J9_0KJ2PJ @     )
MV7L[$^3,\OA^.^NBFK5OG94"$FB$IJW&<M.&71:%*32E7*UF7)Y7576O15*?
M@I0@WUA4Q&\&,<,V*)]FJ/T)KW!JF=!PG@B_7$=RF?TN[IPSM0     (LGM)
MG*MRSXIJ;AYC-Q\.7F#S>X=HLQW:I<_)JS3)EGU]8Y5$]S;D2[9''GW!UM71
M:';1$73W*O3*'JXTKIW;NKW8V4?%T=F=M<]J,(]]*-/6%J?0M6M)MSMK^,K[
M$;*8[<XS[V$0LEM%0     &T7#3BSFW,OD5KW0F$)<C.Y1<J2LIR'P%OQ<.P
M6U*1*RO*YM$IJWTMMMZIC-N50F5/=CQJ*2IY-36:QJEG1].N9^_MBF/!C]:J
M?:TQV9X>2,9XFRTC3+VKY^WD;.R:I\*?U:8]M5VHX.6<(XUE+I_4V"Z)UA@V
MGM9V5G'\%UYCT#&L<MC5$56B'"17Q9DYY#;7KMVNLM;DJ;)53Q)4MYQY?5:U
M5K7#.9N_GLU7G,S5TK]RJ9F>SR<D1P1'%$1"PV4RMC)9:C*9:.C8MTQ$1_CS
MSPS/'.UD@QF0                            ^;+LUGN$ZTW2?:K;-N5A
M?E2K'<9<&+)G663.A/VV;(M,MYI<BW/S+=*=CNK94A3C#BD*K5*JTK]17733
M--,S%-7#&.R<)QC'EV[>R^9HHJJBJJ(FJG@G#;&,83AR;-G8?2/E]
M                     ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_P#<
M5WJ6_(AQO.P<D    #;'@1^_1PN_BRXY_7!AQJM>_ \[_*7OX=3::'^-9/\
MFK7\2E9O%:5C                       !5Z\N?WKN3O\ $+NGZR,E+-Z3
M^%9;^7M^1"MVJ_B>9\_<\N6O1L&     #K'Y&_\ 5)XO_P#K7_[=]MG*;[_V
MOFO_ !_Q;;J-S/[ERW_D_A5K"PK^G@        T'\TF\L6'R\>7TZ11%6W])
MY79DT6\ABGCY&TSCT6M%KI5*EIDW1%4H_"XKHBGI50WVZ]$W-X<I3'SU,]S;
M^AH]Y:XHT'-S/S-4=W9^E6T%C5>P    ;3<&; [E'-/B/8&J/?\ FG);1T=]
M;"4K=8A?I+QIR?+0E=:)5ZG!0X[7K_8@U>N7(M:-F[D\66N]WH3A[+9Z+;F[
MK&5MQQYBWY<8^PLZ2M"QH                       JR-]_/INCZ6=C?+"
M\%H<AZ#9\U1Y,*TY[TV]YVORI8G,IB@    DW>S)_/KR<^B;$?E@Z1IZR_0<
MMYVKR4C>KGTW,^:I\I,A(?2T          &D'F5_T_N8O\/6SODS.-WNW^/Y
M/^8H[\--O%^!9OS%?>5IY9!7@     ";S[-7^XOM?^++.OJ?T20IZR/QRU_*
M4_Q+J9/5Y^"W?YJK^';2%B/W>                             'C=B9_
MBNJL"S/9F<W1FR8;@.,7O+\GNS_3L@V/'[=(NEQ?2CK2KSR8T95&VT^[=<K1
M":54JE#VR^7NYJ_1EK$=*]<JBFF.69G"'CF+]K*V*\S>GHV:*9JF>2(C&58Y
MRAW_ )5REY ;6W]F=/!O>R\LG7Q%N2[5YFPV-M+5NQ?&8KU4H4]$QG&H,2 T
MM5.]Q$>BE=5*K6ME],R%K2\A:R%GVEJB(QY9X:JO?3,SVU<]2SUW4L]=SU[V
M]RN9PY(X(CM1$1VF!3.8(    -A.*7'O)N57(G4N@,4\=JX[(RZ!:)UR88K)
MKC^,QZ.7/+\G=9_ XQC6+P9<Y::UIWT8[?PJH:_5=0M:7I]W/W?:VZ)F(Y:N
M"FGMU3$=MGZ9D+FIY^UD;7MKE<1,\D<-4]J,9[2:IYQ'!C&MG>7:C']5XNU#
MO/#^P6O,-66BVL(5(9U_A5@9L69XE%K2GB.1W,$A^O4:;2IZ5-M$9%*54KI6
M&=T-<N9;>'X3-58T9RJ::YG]>J<::O&V<D15*8-[-%MYG0/@\M3A7E*8JHB/
MU:8PJI\7;SS3"!.3LA      "</[/3RTIN/BU>..^37+Q\YXVW-N'9$R7T+E
MW/4^6R)MQQEUKQ%^L2/R7O:)]L71*:MQ85(".[JY1-(2]8&D_4]4C4+4?$9F
M-O-<IV5>-&%7//23-N'JGUO3)R%R?CLO.SGHJQF.Y.,<T=%((.!=T
M                        $-[VFSY]>,?T39=\L&B8/5IZ#F?.T^2B7UC>
MFY;S57E(R)):.0     +6+ ?S$PKX)8Y^)X95K,?+U]>>_*S=CY"CJ1WGK3Q
M>H                                   !4X%JU7P     )3?LPWY]\O
M_@EIS\<;"(O]9GR&4Z]SO4)+]7'R^;ZEOOU)>A$B50
M               .5'G'\O4\2.%>=2[#=*P-I;CH]J/6=(ZZ)G0IF1PI%,KR
MAFJ:U>C)Q;$$2W69%$U2U<W8:*]*NTJ=3N?I'WMK5N+D8Y6S\97R81/@T^^J
MPV?JX\CF-[=5^ZM'KFB<,S>\"CEV^VGWM..WEPY5>.6"0,     !)S]G"XBH
MR_9VPN8>66JC]EU6Q(UOJUV4PNK3FP\EMC;N7WV$XI%&_6L8PF>B%_>52M+^
MJO2BFTUI&GK%U;X'+6](M3X=WPZ^I3/@Q/6JC'WJ1O5_I7PN9N:M=CP+7@4=
M:8\*8[%,X>^:Y^T#\3U:/Y>1MX8[;:1<!Y-6J1E#JV$UI'A;3QJD&V[!A*11
M3E6ZWEB7;KSXBZI\>5<95$)[6:FQW!U7Z[I'U&Y..8RT]'LT58S1/:VT\T1'
M*P-^M+^I:K&=MQA8S,8]BN-E7=V5<\S/(X,'=.(    !Z3#<NR+ ,NQ?.\1N
M<BRY5AF0V;*L:O$1=6Y5KOV/W&/=;3<(ZZ5I5+T2?$;<3_VI/.]:MYBU58O1
M%5JNF:9CEB8PF.X]+-VY8NTW[4X7:*HJB>28G&)[JS@XD\AL?Y6\;]0[_P ;
MI'9C;'Q"#=+K;8KE76K#E<-3MHS/&Z+6M;BOR>RNWS(=%*KW+2S1?_>H5IU;
M3[FE:C>R%SAMUS$3RT\-,]NF8GMK&:5G[>IZ?:SUO@N41,QR5<%4=JJ)AL6:
MYL                           ,3;\^8K=/T3;&^1]Y,O(>G6?.T>5#%S
MWH5[S5?DRJR2T"M(     $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^FYG
MS5/E)D)#Z6@          T9\S1Z,QY??,-<MUAEI6@=B,H7(6VVW63(L4AB$
MTE3E:)J^_,=;0TFGNE.J31/55:&\W:B9U_)X</UBCO[6EWCF(T+-X\'P%?>5
MJQ8]7D     "=-[.=_3^O/\ $+L;Y,Z](/\ 6'^/Q_+T=^M-.X'X%/GZ^]2[
MTG".W    !_Q2DH2I:U42E-*J4I5:)2E*:=:J56O2E*4I3TU K0?,,Y'/<K>
M9.^-SMSO7L<O.:S;#@*T.^)&1KO#4HQ3"G8R$_X3'OG8;0S.?2WU2J7*=7U5
M555*LEN_IT:5H]C)S&%R*(FKKU>%5W)G".:(5VU[4)U/5[^<B<;<UX4]2GP:
M>[$8SSS+2\W+4      3F/(&X2LZ#XUKY'9E:? VGR3@PKI:JS&.V;CFG8CZ
MY&(6^/5=*K9_+9W_ ,\D50JB9$5=OHNE%L$([^ZU.?U+[NLS_P 7+3,3SW/=
M3[WVL<D]+E3/N-HT9'3OO"]'_)S$8QS6_<Q[[VT\L='D=]S@G<@
M                                                 !  \^O^ICN+
MX):@^K'&2>]Q/[:L]>YY<H,WW_N*[U+?D0XWG8.2    !MCP(_?HX7?Q9<<_
MK@PXU6O?@>=_E+W\.IM-#_&LG_-6OXE*S>*TK&
M "KUY<_O7<G?XA=T_61DI9O2?PK+?R]OR(5NU7\3S/G[GERUZ-@P     =9?
M(V2I7FD<8:T36M$4W6I=:4K6B4UX\[9112JT_NT[E4IUK_;6ARF^_P#;&:_\
M?\6VZC<S^Y<M_P"3^%6L*BOZ>        #B1[0)M>-KWR[\JQ&DSU>Z;JV+K
MO7D!EEVJ)CL6UWG])=W<2EM:7J0?4<!K'D+Z>'TE):7_ .,FBNUW!RLYC>&B
M]AX-FW77/;CH1V\:L8[&/$X[?K-18T"JUCX5ZY11':GISVL*<)[.'&@3D[(0
M    !U0\E;7:]C>91QQC+9\2W8A<\MV)<W:M4>I%1A>#Y'=K.]5%5)I3Q,H1
M 9HOKU;4[15*5JFE*\OOGF/J^[>9GW5<4T1[ZJ(G_+BZ;<_+_6-X<O'N:)JK
MGWM,S'LX+#\KXGH                       59&^_GTW1]+.QOEA>"T.0]
M!L^:H\F%:<]Z;>\[7Y4L3F4Q0    2;O9D_GUY.?1-B/RP=(T]9?H.6\[5Y*
M1O5SZ;F?-4^4F0D/I:          #FCYP^6LX9Y:_*RZ/.U:K<<)LF),T0\X
MRXZ]F^=8IAZ6D5:HIQRBDWNM5HZ=JFJ*HOHCNK3I-T+4WMY,K3'%7-7BTU5?
MH<[O9=BSN]FJIXZ(I\:JFG]*N>+#H!      G6^SJ66MK\ON?.\!AG\I-_;(
MO5'&NWQ)5&+%@N.^/*Z4I7QTUL/A4Z]:^$VC^SH0=ZPZ^EK\4_JY>B/9JG]*
M:MP:.CH4U?K7ZY]BF/T.\1PKM@                            "-E[1C
MR]_1WI+#.)&)W7P,LWA(CYCL1F.KI)AZGQ:ZU5:H3RJ+;=CHS+.K:CL6CNHY
M'LLMERG8[T5(_J\TCZQG:]6NQ\58\&CGN51MGWM,]VJ)XD>[_P"J_5\G1I=J
M?C;WA5]2F=GC51W*9A"])D1"     !+D]FYXBT@6+9W,_+;93UJ_.2=1:@7)
M;51;5FM[\>?LC)HM%T4TMNYW=J%:HSZ*I<:5;[@U7JAWTQ-ZQM6Z5=K1K4[*
M?C+G9G913VHQJF.>F>)*?J]TKHT7-7NQMJ\"WV(VUSVYPIB>:J.-*ED1V);#
M\64PS)BR67(\F-(;0\Q(8>0IMYA]EQ*FW676U52I*J52I-:TK3H1=$S$XQLF
M$F3$3&$[8E6L^8[Q6?X<\P=NZ9C1'8^&M7G\K]8/N56M$K6N7U<NV,--/.NO
M/25V!+CMHD.KK13DNW.JZ=*T+'[NZI&L:19SDS\=T>C7UZ=E7=]M'-,*];P:
M9.DZM=RD1\3CTJ.I5MCN>UGGB6CANVE    !T,\K?EDKAQS/U7LVZW.MMUYD
M,U6L]MU6[5J'^CO-9,.)<+K/JE#CBHN'7J/!OM4HIWN*M=$4]"ZTKS^]&E??
M&C7<M3&.8ICIV^O3P1'6C&GWS?;M:I]TZO:S-4X6*IZ%?4JX9GJSA5VED VX
MVZVAUI:'6G4)<;<;51;;C:Z44A:%IK5*T+37K2M/16A73@V3PK!<.V.!_L
M                             AO>TV?/KQC^B;+OE@T3!ZM/0<SYVGR4
M2^L;TW+>:J\I&1)+1R     !:Q8#^8F%?!+'/Q/#*M9CY>OKSWY6;L?(4=2.
M\]:>+U                                    *G M6J^     !*;]F&
M_/OE_P#!+3GXXV$1?ZS/D,IU[G>H27ZN/E\WU+??J2]")$J@
M                     0$O/0Y>5Y+\S;Y@N-W1R7K+C<W<-6XZVV^ERWW#
M-69J5[0R1A".Y%')&0Q&[2E:5K0]%LK+J>GB5H3SN/I'W;HU-^Y&&9S.%<\L
M4^XCN>%S35,(.WTU7[QU>JQ;G'+9?&B.2:O=SW?![%,2XNG9.0    !]K&L<
MOF89'8,1QBV2KUDN4WJU8YCUFA(HY-NU\O<YBV6FV1$*4E*Y4^?*;:;I6M*5
M6NGI/BY<HLVZKMV8IMTTS,S/!$1&,SVH?=NW7=N4VK<3-RJ8B(Y9F<(CMRLS
M>$W&FR\0^+NG] VFD5V9A6+L*RVZ1?=-WW/;XZ[?<XO27U-,OOQ9F37&32)X
MM*K9@H99_NMII2M>M:E7J^IWL_7CA75X,<E,;*8\6(QY\9XUBM'TZC2M-M9&
MC#&BGPIY:IVU3W9G#FPCB:U>;UQ._P"K;A)LK'++;/?#9&LF:[?UBEEKQ)TG
M(<-@SG;MCT2B*4=>=RS$I,^ RSW);7.>CK5U\)/39;HZK]TZU;N5SAEKOQ=?
M)A5,83[VK"9YL>5KMZ]+^]-&N6Z(QS%OXRCEQIX8]]3C'9PY%=:6%0&
M!*I]FUY:4MU]VGPSRJY=L;(4/[BU*F4^BB4WNW1H5JV/C,/QEJ==>N5F8@76
M-':HEMI%NN+RJ54Y6I%OK&TGI6[6LVHVT_%W.Q.,T3VIQIF>>F.))OJ]U3HU
MW=(NSLJ^,H[,;*X[<851'-5/&ES$3)3                           Q-
MOSYBMT_1-L;Y'WDR\AZ=9\[1Y4,7/>A7O-5^3*K)+0*T@     2;O9D_GUY.
M?1-B/RP=(T]9?H.6\[5Y*1O5SZ;F?-4^4F0D/I:          #F#YS66,8?Y
M:/*2>ZMNCEUQG$<3BM+\*KDA_,-DX;C2T,-.OQZNN,1;FZ^KMJI2&FEN42NB
M*IKTVYUJ;V\F5ICBJJJ\6BJ?T8.;WNNQ9W=S-4\,TTT^-73'Z5=<6%0&
M !._]GBLS]K\O&+.>JNK>1[LV;>8M%,K:31AAG&L>51M:JU3)1ZS87*]Z>E*
M*K5'X4U(,]8-<5;PS3'N;%$=^?TILW"HFG08JGW5ZN>]'Z'= X=V@    .>_
MFH[]7QOX%\A\_@7#WNR>ZX:[KG"GFU4I-3E.RI#6&PYEM[JT36=885VD71/7
MK1*(*E=JNG:KH-U\A]XZ[E\O5&-J*^G5R=&CPL)YIF(I[;0[S9[[OT3,7Z9P
MN31T*>M7X.SGB)F>TK>"Q:OH     &Y_E\\79G,3EQI_1]692L8O&0(O^Q9D
M:BZ5MVN,53[]Y>[60E2*0G[E;HOO?%=K7HF=-8IT56M$UTV\&J1H^DWL[L^%
MBG"CGKJV4]G"=L\T2V^A:;.K:K:R6WX.:L:^:BG;5W8V1SS"RSMUN@6>WP+3
M:H46VVNUPHMNMMN@L-QH4"!"81&APHD9E*&H\6+':2AM":42A":4I2E*%;ZJ
MJJZIKKF9JF<9F>&9GC6(IIIHIBFF(BF(PB.2'[3Y?H
M                                         0 //K_J8[B^"6H/JQQD
MGO<3^VK/7N>7*#-]_P"XKO4M^1#C>=@Y(    &V/ C]^CA=_%EQS^N##C5:]
M^!YW^4O?PZFTT/\ &LG_ #5K^)2LWBM*Q@                       J]>
M7/[UW)W^(7=/UD9*6;TG\*RW\O;\B%;M5_$\SY^YY<M>C8,     '9#R%/ZF
M.G?@EM_ZL<F./W[_ +:O=>WY<.MW(_N*UU+GD2G_ ) B<P       "%#[1KR
M>C[(Y)8%QMQV>B18N/F-O77+:1U+\-S9.R(MJNKT&16E:L2OR?PN%:ZM*3UJ
MR_<932NBJ*I2:/5WIDY;3;FI7(PN9BK"GJ48QCVZIJ[,1$H>]8&I1F-0HT^W
M/@6*<:NO7A.':IP[<S".<2&X     $H?V9O23URV?R*Y$SHW2#B.%6+4.///
M,][<FZYM>(^6Y([#<4FJ&I=FMV%6]MQ5*T7X5T[:>Y6NA&/K*SL4Y;+Z=3/A
M5US<GL4QT8[LU3XJ2?5UDYJS.8S]7!11%$=FJ>E/<BF.ZF$$1)7
M              %61OOY]-T?2SL;Y87@M#D/0;/FJ/)A6G/>FWO.U^5+$YE,
M4    $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^FYGS5/E)D)#Z6@
M     CM^TB[C9P[B)K/3T69X-YW/MR-/D1/$[?7<-UA:7KQ>Z^'1Q*W/5LLO
MV/*]*5(3U]/1545)"]7.3F]JUW.3'@6;.'8JKG"/\L5N!]8.;BUI5O*1/AWK
MN/O:(QG_ #32A*$TH=      L3/)CP-S7WEJ<8K=)96U.R#'LJSR4I?B44^W
MG>?Y7E-H>HA;CB6T?D]<X:4]G:E:4T7T[E*K6O>^5_ZQO)F:H]K3533XM%-,
M^S$I\W1L? ;NY:F?;54U5>-555'L3#J&<PZ0
M   !\V\WBUX[9[KD%\GQ;59+';9UXO%TFNI8A6VUVR*[-N$^6^NM$,Q8<1A;
MCBZ^A*$UK4^J**KE<6Z(F:ZIB(B.&9G9$/FNNFW1-RN8BBF)F9Y(CAE6@\\^
M4EUYC\J]M;WF.3DV+(K^NUZ_M<Y71RQ:XQU/O1AML]732C4.0NTQTRYB$4[5
M7"5(<K52EJ56R6A:71H^E6LC&'3IIQKF..N=M4]W9'-$0KMK>I5:MJ=W.SCT
M*JL*8GBHC93'<VSSS+4 V[5     R%J75^7;KV?@.H\"@>^69;(RRQX=CL15
M5(95<[]<&(##\QY*5^K6Z'XU7I+U:=K$=M;BNB4UJ8^;S5G)9:YF[\X6;=$U
M3V(C'N\41QR]\KEKN<S-O*V(QO7*XICLS.'<Y>2%G;Q_TKB7'/2FL-&X,W5.
M,:PPZSXI;Y#C3;,FZO0(]*W2_P!P;:K5JEUR.[N/SY=4^Y5)DN5IZ*E:,_G;
MNHYV[GK_ ,K=KFJ>;'@B.:(PB.:%CLCD[6GY.WDK/R=NB*8Y\.&9YYG&9YY9
M@,-EHW/M&O$^FPM#8-RKQBUT>RG1EU:Q3/7X[2JR9>J\UN#;%OF25I[UNMXC
MG3\>C2*)I1#-ZENK51+?0D;U=ZK]7S]>E79^*OQTJ>O3&V/?4X^+$(^W_P!+
M^'R-&IVX^-LST:NI5.SQ:L/&F4+8F5$      %@[Y*G+2O*;A'A4/(+EZ]LO
M12V=.YU5]];L^?$L$&.O!,ED>,MR2][]X<N,R](<4JLFY0IBNOHK2D [YZ3]
MUZU75;C#+7_C*>2,9\*.U5CA'%$PG;<_5/O/1J(N3CF+'Q=7+.$>#/;IPV\<
MQ+KD<DZH                              0WO:;/GUXQ_1-EWRP:)@]6
MGH.9\[3Y*)?6-Z;EO-5>4C(DEHY      M8L!_,3"O@ECGXGAE6LQ\O7UY[\
MK-V/D*.I'>>M/%Z@                                   %3@6K5?
M    E-^S#?GWR_\ @EIS\<;"(O\ 69\AE.O<[U"2_5Q\OF^I;[]27H1(E4
M                              &@WF9<M(_#+AWM/;<.8PQGEP@)P'4\
M5QVC;TO8^8M2(%FF1T5JGUA.*P42KX^UW(J[&MCB$JHI23?;M:3.LZQ:RDQ\
M1$].YU*=L^-.%,<]4-'O%JD:1I-W-1/Q\QT:.O5LCQ8QJGFB5;=(D/RWWY4I
M]Z3*DO.2),F0XMY^0^\M3CS[[SBE..O.N*JI2E5JI2JUK6O4L;$1$81LB%>Y
MF9G&=LR_D     '?[V?+B)7=?*>X<A<HMM7\!XTPF+K:*R8R78-WVUDK$V#B
M,9-7D>&[7%+:B9>*K:55V+.8MZJTHEVE:\%O_JWU+2XT^U/Q^9G">6+<835X
MTX4\\35R.YW$TKZYJ<Y^['Q&7C&.2:YQBGQ8QJYIZ/*G(D(IG *YWS:^)U.(
MG-G9^'V2TTM>ML_E5VQJMJ.PIFW1L2S.7,DRL>MZ:-(9:BX?D[$^ULM44XI,
M2*PM=>KA8?=/5?O?1;5ZN<<S;CX.OEZ5/'/6IPJGGF4 [TZ7]U:Q<M41AE[D
M].CDZ-7%'5G&.Q$.:1TCG0    9HXZ;PRSC9O/5N]L(><;R/6.8VK)H\=#]8
MR+O;X[M8]^QR6\E#BD6W*+!(E6Z5T36M8TIRE/PF'J.1M:ED;N1O_)W:)I[$
M\4]FF<)CGAF:?G;NG9VUG;/RENN)[,<<=B8QB>:5G9J_8V*[@UQ@FU<&N"+K
MA^Q<3L&9XU/3THI^SY%;(UTA>.WU[H\MIF31#[*NCC+R5(72BDUI2L^:RUW)
MYFYE;\87K=<TS'/$X3_\<JQN6S%K-Y>C-69QM7*(JB>:8Q>[/![@
M                 Q-OSYBMT_1-L;Y'WDR\AZ=9\[1Y4,7/>A7O-5^3*K)+
M0*T@     2;O9D_GUY.?1-B/RP=(T]9?H.6\[5Y*1O5SZ;F?-4^4F0D/I:
M        ".7[29N6-B?%74VE8LI#=[V_ME-_EQN^M5OX=K"RR95TI5I-:53U
MRK*+(M*U5JGHTJE$UK[I$B>KC)S=U6[G9CP+-K#WU<[/\M-2/_6%FXM:9:R<
M3X=V[C[VB-O^::4*0F=#X     %BQY-V!.:[\M?BY:I#'@R[[B=_SV2NO7OD
M-[#SC*,TM;Z^K;/7_P CO<5">B>GAH3Z5?WU5YWPO_6-Y,U7'!37%/B4TTS[
M,2GW=*Q]7W>RU,\-5,U>-5-4>Q,.FYS3HP    1:/::-SN0,#XU<?8$JM$Y-
ME&5;;R6*BO95+&(6QG$L1\:M/=.L39&77=5$=>WOB)56E:T16DH>K7)Q5?S.
MH51[6FFW3[Z>E5W.C3W4:>L7.=&QE\A3/MJJJY]['1I\JKN(@Y+:*@     )
MA7LU?&I%AUQNGE=?+>A-TSZ\L:AP&4\BJ9+.(XHJ)?LVFQ%TK5"[=D6528$9
M77W27[ KT4I6E51#ZR-2^$S-G2J)\&W3\)7UJME/;BG&>Q6E?U>:=T,O>U2N
M/"KGX.GJT[:NU-6$=FE*%(R22
M                         " !Y]?]3'<7P2U!]6.,D][B?VU9Z]SRY09O
MO_<5WJ6_(AQO.P<D    #;'@1^_1PN_BRXY_7!AQJM>_ \[_ "E[^'4VFA_C
M63_FK7\2E9O%:5C                       !5Z\N?WKN3O\0NZ?K(R4LW
MI/X5EOY>WY$*W:K^)YGS]SRY:]&P8     .R'D*?U,=._!+;_P!6.3''[]_V
MU>Z]ORX=;N1_<5KJ7/(E/_($3F       U#YR\NL*X2<<,ZWIERHLRXVR+6R
M:]Q9][PGLWV/=X\JF+8RPE+K3]8KC\=<JX.-5JY&M<62^E*JM=M=OH>DWM:U
M&C(V<8IF<:ZOU:(]M5^B.6J8CC:K6M5LZ-I]>=NX35$84T_K5S[6/TSR4Q,\
M2M;V!GF6;2SG+]DYW>)&09IGF27G+<IO<OL2_<[[?Y[]RN<M3;24,L(=E2%=
MC3:4M-(Z(0E*4TI2Q^7L6LK8HRUBF*;-NF*:8Y(B,(5YOW[N9O5YB_/2O5U3
M55/+,SC+R!ZO(    %BKY0'&1[BWP0U'C-YM_O?G&QX[VY\_86SX$IB_[!BP
M)=KML]I2$/-7&P85#M5NDH7UJB1%<I3T=*4KUO=J<:IKMZ[1.-BW\71V*,<9
MCFFKI3'-*?=U-.G3=$M6ZXPO7/C*NS5AA'9BGHQ//#IT<RZ,
M           59&^_GTW1]+.QOEA>"T.0]!L^:H\F%:<]Z;>\[7Y4L3F4Q0
M  2;O9D_GUY.?1-B/RP=(T]9?H.6\[5Y*1O5SZ;F?-4^4F0D/I:
M " 1YZ'*MCDCS>R3%L;N*)VON.]N5J+'W(SJ'84_*8,UZ=LF]M51WTJZO*':
MVKN2M3;L>SLN)I2JU=9ZW'TJ=.T2F[<C#,9B?A)Y8IF,*(\7PNS5*#=]-3C4
M-9JM6YQL9>.A'/5CC7/=\'L4PXSG8N1    !]G'+!=<KR&Q8M8HJYU\R6\VN
MP6:$W_XDRZWF<Q;K=%1Z*^[D2Y*$4_[:GQ<N46K=5VY.%%,3,SR1$8R^[=NJ
M[<IM41C75,1'9F<(6F>H]>6S4>J=9ZJLU45M&M-?X=@%L4VW1I"X&'X[;L?B
M.4;32E$>(Q;TJZ?_ !J5?S>8JS>:NYJOV]VY57/9JF9_2LME;%.5RMO*T>UM
MVZ:8[%,1'Z&0S'>X                           #@M[0%RZ_05Q,9T5B
M]T]5V%R;ES,8E4BR?#G6O5%B5"EY_,4ENJE(9R54F)8JH=31$F'/F]E>YFO3
MN]P=)^O:M]>NQCE\M$5<TUSCT/%VU<TQ3RN(WZU7ZEI?U*W.%_,SASQ1'MI[
M>RGGB9Y$%DG!"P     $F[V</B+^6.TM@<PLLM?B6'5$>3KG5SLJ-W,R=BY/
M;$KRZ]07E4Z)D8IA,Y$-5*=:*_*#K2M%-$:>L75O@<K;TBU/QEWPZ^I3/@Q[
MZJ,?><Z1O5_I7PN9N:M=CP+7@4=>8\*8ZM.SWR9"0^EH \'M+6^*[AUMGFJ<
MX@TN6(;&Q'(,+R2%7MHMVT9';)-JFJCN*2OU>:PS)JXP[2G>R\E*TUHI-*GO
ME<S=R>9MYJQ.%ZW7%4=F)QCM<O,\,SE[6;R]>5O1C:N433/8F,/_ ,*PWD%I
M7*^.>[=H:-S=KLR76&97G%)SZ6UML7./ DJK:K]!2Y1+E;9D5G<CSXJE4HI4
M:2BM:4K7H68T_.VM1R5K/6/D[M$51S8\,3SQ.,3SPKCG\G=T_.7<E>^4MUS3
M//AP3'-,83'-+#QF,0    '9[R+^6E.-?-2P87D5R]2UOR/CP]4Y+1]]#,&#
MESLM<C6%_>HXMIJKL?)9"[7WK51+,:\OKZ5JFE#C=^-)^\M&JO6XQS.6\.GE
MFGW<=SPNS3#KMR]4^[M8ILW)PR^8CH3R15[B>[X/8JE/Q(&3D
M                   (;WM-GSZ\8_HFR[Y8-$P>K3T',^=I\E$OK&]-RWFJ
MO*1D22T<@     6L6 _F)A7P2QS\3PRK68^7KZ\]^5F['R%'4CO/6GB]0
M                                "IP+5JO@     2F_9AOS[Y?_  2T
MY^.-A$7^LSY#*=>YWJ$E^KCY?-]2WWZDO0B1*H
M          (.OM"'+W]-7*"U<=L5N;,K >-<23 O-8;OB,7/;F3,Q).6J?<1
M1*'OR3M<>':D-U[E19J)Z>[_ !%)I-OJ_P!(^I:9.H78POYF<8YK=/M?&G&K
MGCH\B&=^]5^N:E&GVIQL9>,)YZY]MXL84\T])'Z.^<*    #_3;;CKB&FD+=
M==6EMMMM-5N..+K1*$(0FE5+6M5>E*4]-:C@VR<.R.%9">5YQ)8X:\-M7ZRN
M%M;@[#R"%^D?;;OA5;EO;#S"-$E3[;-[DH4IS$;0S"LB:]$T4BVT7T[E*K6N
MF\^K3K&L7<S3..7IGH6^I3P3[Z<:NVL%NWI<:1I%K+51A?JCIU]:KAB>K&%/
M:="3GV^ .!'M!_$[]-/$VW;[QJW(?SGC1=G;Y<5,1^^;<]594[!M69Q*5:;\
M5W\GKFU;KO13B_"C0HLZJ4]SM:G>[@:K]2U6<A<GXC,QA'-73C-/=C&GGF:>
M1PV_>E_7-+C/6X^/R\XSRS15LJ[DX5<T15RH,Y-R&      )G_LY/+2NP-(Y
MWQ-RBY>-DVD9SF9Z_;D/K7(F:NS"Y*5=X$9MQ;BU,XAG$I:G%>Y0AJ]QFTI]
MQ6M8;]8FD_5\[;U6U'Q5^.C7UZ8V3[ZGR9E+OJ_U3X?)UZ7=GXRS/2IZE4[8
M][5Y4)*!'"0P                         8FWY\Q6Z?HFV-\C[R9>0].L
M^=H\J&+GO0KWFJ_)E5DEH%:0     )-WLR?SZ\G/HFQ'Y8.D:>LOT'+>=J\E
M(WJY]-S/FJ?*3(2'TM          !7[^>'RKB<F><666?%[I[XZ[T#;DZ;QA
MZ/(4[;KC?K-/ES-B7Z,VE2X]5R<OE/6Y,AI2D2X5JC.TKVUI2D^;DZ5.FZ)1
M7=C#,9B?A*N6(F/ CQ<)PXIJF$%[YZG&HZS51:G'+V(^#CDF8GPI\;9CQQ3$
MN/!U[DP    ?:QK'KOEV16#%,?AN7"_9/>K5CUD@,TJIV==[U.8MMMAM4I2M
M:N29DE"$TI2OI4?%RY1:MU7;DX6Z:9F9Y(B,9?=NW7=N4VK<8UU51$1SS.$+
M3C56!6S56K];ZOLM$4L^M\"P_ K31M%&VZ6S#\>MV/0*(;2E"4(I%MR.E*4I
M2E/1T*O9J_5FLU<S5?M[ERJJ>S5,S/?66RMBG*Y:WEJ/:6Z*:8[%,1$=Y[T\
M'N    "!'[0#M1S8?F)Y;BZ)-'X&F-<:YUM#2U7_  $OS;2[LNZ5]S7L7*1<
M=A+8=7_>ZL4;KZ&Z4I.^X.5C+[O47</"O7*Z^Y/0CV*,>WSH0WZS/UC7ZK6/
M@V;=%'L=.?9JP[3B8=HXX    '_4I4M24(352E5HE*4TJI2E*KTHE-*=:UK6
MM?10"SBX-Z';XS<1N/VD50V8-UPC6]B;RMAA"6VU9U?6EY+GK]*)Z]WK.97F
M<YUK6JJT5Z2M.MYZ=2U;,9W'&FNY/1ZL;*?\L0L;HN1^[M*L9/#"JBW'2ZT[
M:O\ -,MK#5-F
M            " !Y]?\ 4QW%\$M0?5CC)/>XG]M6>O<\N4&;[_W%=ZEOR(<;
MSL')     VQX$?OT<+OXLN.?UP8<:K7OP/._RE[^'4VFA_C63_FK7\2E9O%:
M5C                       !5Z\N?WKN3O\0NZ?K(R4LWI/X5EOY>WY$*W
M:K^)YGS]SRY:]&P8     .R'D*?U,=._!+;_ -6.3''[]_VU>Z]ORX=;N1_<
M5KJ7/(E/_($3F     !B?=N\=5<=-;Y!MG<^:6?!,#QICQ)]YN[U4UD27$KK
M#M%H@M)<G7J^W);=41845MV3(7Z$(KZ>F7DLCFM1S-.4R=$W+]7!$=^9X(B.
M.9V0Q<YG<KI^7JS6<KBBQ3PS/>B.&9GBB-LJ^WS,O,2S7S!-TTR1;%RQ;3.#
M5GVK4&O)DAEQVUVZ4ME-QRK(:1:JBO9CE=8C3DKL4ZU#9;:BM..)94\]/N[6
M[UG0,E\'LJSE>$W*^6>*F/V:>+EG&9PQPB"MXM?O:[G/A)QIR=&,6Z.2..J?
MVJN/DV1'!C/-HZ-SP    .G?E(\,GN9W,'"L<OUH<GZCUFY'V9MYYUA2[;)Q
MZQ3&EV?#Y3BDT86YG6048@K8[TO*M_KCS?7U=73F=[-9C1M(KN6YPS=WP+?+
MC/#5[V,9QX,<(XW1[K:1.KZM1;KC'*V_#N<F$<%/OIPC#DQGB6*A7I/H
M                    59&^_GTW1]+.QOEA>"T.0]!L^:H\F%:<]Z;>\[7Y
M4L3F4Q0    2;O9D_GUY.?1-B/RP=(T]9?H.6\[5Y*1O5SZ;F?-4^4F0D/I:
M         '(;S?\ S$K7P?T%.QS"KRQ_U'[?M5PLFK[<PI+LS$+6_14"^;2N
M#7=VQ6,=;<6BU>)15)5XJU2C;K#$OP^MW1W>JUO/Q<O4_P#KK,Q-<\54\,41
MV?=<E./!,PY7>O7Z=&R,V[,_^PNQ,41^K'!-<]CW/+5APQ$J^UYYV0Z[(D.N
M/OON+>>>>6IUUYUU55N.NN+JI;CCBU5JI5:UK6M>M2?HB(C".!!,S,SC/"_F
M     '7#R1N.CO('S =539L"LO$=&TE;SRAY25499DX4]$1@C27>E&E2E[&N
M-I>HS6O<Y&COUI2M$*K3D]]=1C(:!=IIG"]?^*I]][;_ "15VYAU.YNGSGM=
MM53&-JS\9/O?:_YYI[42L'R $[@                           /\..-M
M-K==6AIII"G'''%40VVVBE5+6M:JT2A"$TZUK7T4H.'9'"<&V>!7#>:=RWKS
M*YF;-V1:+E[X:YQ>1366I%-K6J([K_#IDYB)>HE%UZT9S"]2IUYIUHE:4W!*
M%4IV=*6*W7TG[GT:UEJXPS%7AW.O5AL][&%/:5^WFU7[WU>YF*9QR]/@4=6G
M';[Z<:NVYV'0M     #Z^/6"]97?['BV.6V5>,AR6\6RP6&T0D>+-NMZO,UB
MW6NVQ&^M/$E3ITEMIM/6G5:J4/BY<HM6ZKMR8BW3$S,SQ1$8S/:A]6[==VNF
MU;B9N53$1'+,[(CMRLS.$7&6R\0.+NHM!VFD1Z?AV,1G<SNT.BJLY!L*]U5>
M,YOC;CB4R'(DW(YDBD2CG5;,%#+/7HW0K9K>IUZOJ=[/UX]&NKP8GBHC93':
MC#'GQGC6+T;3J-*TVUD:,.E13X4\M4[:I[<XX<V$-K#5-F  (?WM)'$]-AS?
M5W,7%[;1NWYVPQJ;:CT=FB4TRZP0)$_ +[,6VS6KLJ]8I#EVYQQQ=*(:LL5"
M:5JHESU<ZK\)8NZ/=GPK?QE'5F<*XCL583[Z44^L+2^A>M:M;CP:_ KZT1C3
M/;IQCWL(N))Z-0    ?WBRI,&3'FPI#\29$?9E1)<5YR/)BR8[B76)$=]I2'
M67V7444A::T4E5*5I6E:'Y,15$TU1C$OV)FF<8V3"RA\N#E;$YD\/]3;D>G1
MY6:>]-,,VK&94W1R!LW$6F+=DJI+#+;34+\H$58O,=E-.C<*YL4ZE<=X]*G1
M]7NY.(F+./2HYZ*ML=G#;3,\M,K"[OZG&KZ3:S<SC>PZ-?-73LGN[*HYIAO.
M:-N@                            "&][39\^O&/Z)LN^6#1,'JT]!S/G
M:?)1+ZQO3<MYJKRD9$DM'(     %K%@/YB85\$L<_$\,JUF/EZ^O/?E9NQ\A
M1U([SUIXO4                                    J<"U:KX     $I
MOV8;\^^7_P $M.?CC81%_K,^0RG7N=ZA)?JX^7S?4M]^I+T(D2J
M                      &JO-KDQ9>(7%[;V_;O6.[,PS&'V\1MDE*G&[[G
MU[<;LF#V5QEMQIYR),R6?'];JW7N:A)>=_ W4VFBZ;7J^IV<A1CA75X4\E,;
M:I[41.'/A#6:QJ-&E:;=SU?#13X,<M4[*8[LQCS8RK-<GR6_9GDF0YAE5UEW
MW)\KOEVR7([W/<\6?>+]?9\BZ7BZS7:431R7<+A*<><5TIU6NM2REJW;LVZ;
M-J(IM44Q$1'!$1&$1'8A76Y<KO7*KMV9JN553,S/#,S.,SVY?$/M\     [$
M>2'Q&7R@YJXIDF06OU[6/'GU#;F9K?114&;D%LG4_1KC3R5MNM/KNN61DS78
M[J:M2;=:I;:J^FE*\AOKJWW9HM=NW.&9S&-NGEB)CPZNU3LQXIJAUFYNE?>6
ML4W+D8Y;+X5U<DS$^!';JVX<<4RL!R TZ  #X&58O8<WQ?),+RJVQ[SC&7V"
M\8OD=GF)[XEUL-_MTBU7BVRD=:=\>=;Y;C2Z?VI74]+5VY8NTWK4S3=HJBJ)
MY)B<8GM2^+MNB];JLW8QMUTS$QRQ,83';A60\O\ CO?.*/)?<7'^^U?><UUF
M,ZWV6XR$T0[>\/N+;-[PG(%I2E+:7+YB5SA2G$)ZT;<=4CK6J:EEM(U"C5=-
MLY^C_N41,QR51LJCM51,*Y:KD*]+U&[D:_\ MUS$3RTSMIGMTS$M;38M>
M #<SR_>4<[AURVU!O%+TK\FK-D"+%L6#%[EJNFMLII[RYC'I&I5*)DJ!;)59
M\-M5:)K/AL*K6G;UII]?TNG6-)O9'9\+-.-$\E=.VGNSLGFF6WT+4JM)U2UG
M?^W%6%<<M%6RKN1MCGB%EM;KC O%O@7:U38MRM=TA1;C;;C!?;DPI\":PB3#
MFQ)+*EM2(LJ.ZE;:TUJE:%4K2M:5*W54U45317$Q5$X3$\,3'$L135373%5,
MQ-,QC$\L/VGR_0                        Q-OSYBMT_1-L;Y'WDR\AZ=
M9\[1Y4,7/>A7O-5^3*K)+0*T@     2;O9D_GUY.?1-B/RP=(T]9?H.6\[5Y
M*1O5SZ;F?-4^4F0D/I:         '';SC/,4M7"?0DS"\(O#"N1VYK/<;+KV
M!%?2J?A&.R4O6Z^[3N+2%T<B-VI/B1K/5?3UF[U2I*768DNB.OW/W>JUK/Q>
MOQ_ZZS,37/%5/#%$=GAJY*>29AR>]NOTZ/D9LV9_]A>B8HCCIC@FN>QP4\M7
M+$2K^W'''7%NNK6ZZZM3CCCBJK<<<76JEK6M5:J6M:J]:UKZ:U)\X-D(+X=L
M\+_(     =;_ "1N/3F_?,$U1+FP?6\4TBB=O+)EK:JIII_"EQ6L(31=4J9I
M(KL6Z6EVB%5[ELL.U33W-:TY/?74/J&@78IG"[?PM4^^]M_DBKMS#J=S<A]>
MUVU,QC:LXW)][[7_ #S3W)6$! "=P     *R#G?GZ]H\TN5.=^-61%ON_-H^
M]#JDK2NN/6S+[K9\;0XEQ;BDN-6"WQD*IU[>Y->E$TZ4I9;0LO\ 5=&RMCCI
ML48]F:8F?9F5<];O_6=8S5_BJOUX=B*IB/8B&IYM6K    !N9Y=^H4[VYP<7
M]8OQ*3[9>MNXO=LAA*I2J9>)X5(7G.7QU=:*I2CV+XW+36M:5I3KUZ&GWAS?
MU'1,UF8G"JFS5$3^U5X-/^:8;?0,I]=UG+9:8QIF[$SU:?"J]B)6896Q8D
M                                                           "
M !Y]?]3'<7P2U!]6.,D][B?VU9Z]SRY09OO_ '%=ZEOR(<;SL')     VQX$
M?OT<+OXLN.?UP8<:K7OP/._RE[^'4VFA_C63_FK7\2E9O%:5C
M            !5Z\N?WKN3O\0NZ?K(R4LWI/X5EOY>WY$*W:K^)YGS]SRY:]
M&P8     .R'D*?U,=._!+;_U8Y,<?OW_ &U>Z]ORX=;N1_<5KJ7/(E/_ "!$
MY@  !@W;W)KCQH&#(G[IW9K'6:([5'O4\OS*QVF\RDU0EU+=LL#\RE\NTAQI
M=%):BQWG5)]-$UIZ3.RFF:AGZNCDK-V[U:9F.W/!';EA9O4<AD:>EG+UNWUJ
MHB>U'#/:APVY3>T:\=-?Q+E8>+>%Y!O;+:-NM0LPR:%<<"U=#?KT2U*I'N3,
M?/LCHPNBJN1O4+2VXGM\.7[JM4]OI?J[U',3%S5*Z;%KCIIF*J_8\&.SC5V'
M&:GZP-/L1-&FT57[OZTXTT>SX4]C"GLHJW*[FIR,YI9JG--^9_-R/U%R17&<
M0MR*V? \+C2:IHN)BN+1G%0H-5M-H0[+=J_<)26TUD2'E)HHE+2M%T[1K/P.
M0MQ3C[:J=M576JX9[&R(XHA&6J:QJ&L7OAL]<FK#@IC933U:>+L[9GCF6JAM
M&L    !]*S6:[Y%>+5C]@MD^]WV^W*#9K+9K5$?GW2[W>YRFH5MMEM@14.R9
ML^?,?0TRRVE3CCBZ)32M:TH?-==%NB;ER8IMTQ,S,[(B(VS,SQ1#ZHHKN5Q;
MHB9KJF(B(VS,SP1$<LK$ORJ>"$#@AQDM&)WN/$>W1L9<'-MU7>.IE^C>1.Q%
M(M.%PIC*W42+-@-ND*B-J0XME^<Y,E-]J9/8FO>].NU:[J<W:,?J=O&FW'-Q
MU3SU3MYHPCB3YNSHE.B:=%JO#ZY<\*Y//Q4]BF-G/.,\;ID<TZ(
M               *LC??SZ;H^EG8WRPO!:'(>@V?-4>3"M.>]-O>=K\J6)S*
M8H    )-WLR?SZ\G/HFQ'Y8.D:>LOT'+>=J\E(WJY]-S/FJ?*3(2'TM
M   '+;S%_-2T;P(Q:?9')L#8G(>Z6VKF':>M4U#C]O7+C>) R79$N,NJL3Q1
M'>AQ#:^EQN=*T3$:JWXTF-U&[NZV>UZ[%<1-O3XGPKDQP\L4?K5>Q3QSP1/-
M:_O-DM#M31C%S/S'@VXXN2:_U:?9GBCAF(#_ ""W_M'D_MO+]V;BR%>1YUF<
MY,F=(0UZK;;9!C-)BVJP6&W)4MNUV"QP&D1XK":JJEM'<XIQU2W%SOI^0RNF
M92C)9.GHV*(V<LSQS,\<S.V9_0@_/Y[,ZEFJ\YFZNE>KG;R1'%$1Q1$;(C]+
M#)F,0     "<Y[/GQ,<TCQ,N.]LGMR8V<\FKK$R&W4>9[)=NU3B_KUNP:.KQ
M$56U7(9TNXWCN;7X<B#,A54GO:(0W_U;Z[JL9&U.-C+1A//75A-7<C"GFF*N
M5-&XFE_4]+G.W(PO9F<8YJ(V4]V<:N>)CD=\S@W<
M        ./?G;\O4\6N%N4V#';I6!M/D'69J;!Z1UT3-M]DN$1*]DY0W3JAQ
MMNTXB^N"T^VJCL:Y76&XGK1->G7[E:1]Z:S3<N1CE<O\95R3,>TI[=6W#CBF
M8<GOCJOW9H]5NW.&9O\ @4\T3[>>U3LYIJB5?H3X@L     #OQ[/IQ%KNWE9
M/W_E%L5(P#C1 8O5L6^VE42Z;;R-$J%A<3M<I3QJ8U;FI]X4MI7?&G18'=3M
M>IUX/?\ U;ZEI49"U/\ R,S.$\UN-M7=G"GGB:N1W.XFE?7-3G/7(^(RT8QS
MUSLI[D8U<TQ3RIRY""9P   U5YM\:[3RYXM;CT'<DQ$3\UQ.77#[E,0A3=CS
M^RJ1>\&O2G*H4ZS'AY-;XU)7AU0MV$MYKNI1RIM-%U*O2=4LY^G'HT5^%'+1
M.RJ/%F<.?"6LUG3J-5TV]D:L.E71X,\E4;:9[L1CS8PK+K[8[OC-[O&-Y!;Y
M5HOV/76X6.]VJ:W5F;;+O:9;T"Y6^6U7TM2H4R.MMQ-?[JTUH65HKHNT1<MS
M$VZHB8F..)VQ/;5TKHKMUS;N1,5TS,3'),;)A\L^GR    "1I[.GRTKK+D/E
MW%K*+EX.(\@+8N^86B2^I,:W;8PBW2IOJT=+BT18OY986W+:><KU<D2[7;V$
M4JI=*$=^L/2?K.GT:I:CX[+SA5SVZIP_RU88<D552[_<#5/JV?KTV[/Q5^,:
M>:NF/]5./9FFF$ULAA,(                            !#>]IL^?7C']
M$V7?+!HF#U:>@YGSM/DHE]8WIN6\U5Y2,B26CD     "UBP'\Q,*^"6.?B>&
M5:S'R]?7GORLW8^0HZD=YZT\7J
M  5.!:M5\     "4W[,-^??+_P""6G/QQL(B_P!9GR&4Z]SO4)+]7'R^;ZEO
MOU)>A$B50                               AM^T=\NE9EM77_#W%+HM
M6/ZFCL;$V@Q&DMKC3=BY3:Z4Q&TS6454I$C$<*G.2D]:THK\H*TJGJTFI,/J
MZTGX'*W-7NQ\9=\"CFHIGPI]]5&'O.=$OK U7X;-6])M3\7:\.OGKJCP8GJT
M[??(RA)2.0     +!/R3N(E>*_"K$[KD5MK"V?OUR+M[.*28R6+C;+7=[>RU
MK_%'U*0B4ENRXI5N6ZP]2BXURN<U'3H0%OIJWWIK5=%N<<KE_BZ>29B?#J[=
M6S'CBFE.NYVE?=FCTU7(PS-_XRKEB)CP:>U3MPXIF77PY%U8   13_:3.*%9
MMIU/S(Q>VT\>RU:TWM5R,RFBEVN;(G7G7-_E]BT4Z0KF]<;:^^M*UK];@M=U
M$MH22GZN-5Z-=W1[L[*OC*.S&$5QVXPF(YJIXT9>L+2\:;6K6XVQ\77V-LT3
MVIQCMQ'$B0$L(L      GJ>0QRV5R)X:0-99+=JW#9'&6;"UO=4R7ZO7";KN
M9'D2]57AVG:E*(L:SPY5B:IU4NM+#5:Z]7*5K!._>D_=^LSF;<89;,Q-<<G3
M]W'=F*O?)NW(U3Z_I$9:Y..8RT]">7H>XGN8T^]=NSBG9
M         !B;?GS%;I^B;8WR/O)EY#TZSYVCRH8N>]"O>:K\F5626@5I
M  DW>S)_/KR<^B;$?E@Z1IZR_0<MYVKR4C>KGTW,^:I\I,A(?2T        <
MK?,:\U?2/ O%YUA:EVW8_(BZVU;F(ZCML^BZVI<EE?J.2;(F0U*7C.-,KJEQ
M,>JD7&YT]Q&11OQ9+'4[N[K9W7;L7)B;>GQ/A7)CAY8H_6JY^"./BB>9W@WG
MR6AVYHQBYGYCP:(G@Y)KY(YN&>+CF(#N]-Z;1Y([1RK<>X\JG9?GF7SJR[G<
MY=>R/%CH_P .!9K- ;Z1;/8+/%HEB'#82EF.RFB4T_#6L[Y'(Y73LK1D\G1%
M%BB-D=^9GCF>&9GA0?G<[F=0S-6;S=4UWZYVSWHB.*(XHXF)#+8H     $X+
MV>'BH[J'BSD7(3);:N+EW)&^,R;%ZRTE$B+JS"7KA:\;6A*^K\?\HL@E7.;6
MON4R8?J3E*531*JPGZP=4C-ZI3I]N<;66IV]>K"9[D=&.:>E"9=PM,G*:95G
M[D87<Q5LZE.,1W9QGGC!(-. =V    #X>3WV+BV-9#DT[L]2QVQW:^S/$=3'
M;]5M$"1<)'>^M*D,H\*/7JNM*T33TUIZ#[M6YNW*;5/MJJHCNS@^+E<6K=5R
M>"FF9[D8JI>X3I5TGS;G.=\>=<9<F=,?[&VO&E2WER)#OALH;9;\1YRM>U"4
MIIUZ4I2GH+3TTQ33%-/M8C!6.JJ:JIJJ]M,XOR'Z_     =XO9V->(R_G]*R
MU^/1;6J=([!RV+)6I::,76^3L;UXPVW1"%T<??M>93>B552GPT+KU[J)2KA?
M6%F/@= BU'#=OT4]J(FOOTP[;<&Q\+KDW9X+5FJKMS,4]ZJ4ZT@Y-0
M                                                       $ #SZ
M_P"ICN+X):@^K'&2>]Q/[:L]>YY<H,WW_N*[U+?D0XWG8.2    !MCP(_?HX
M7?Q9<<_K@PXU6O?@>=_E+W\.IM-#_&LG_-6OXE*S>*TK&
M        "KUY<_O7<G?XA=T_61DI9O2?PK+?R]OR(5NU7\3S/G[GERUZ-@P
M    97TIO+:W'38=JVMI;,9N![!L<6ZPK5DL"%:9\J'%O=ND6FZ-(BWNWW.W
M+I+MTMQJM5LJK2BNJ:TKTK3%SN1RNHY><KG:(N9>J8F8G&."<8X)B>%E9/.Y
MK3[\9K)US1?IB<)C">&,)X8F.!O!_.3\S'[5F6_%+6/^AS2?T?NU]EH\:O\
M>;G^K=XOM5?BT?NG\Y/S,?M69;\4M8_Z'']'[M?9:/&K_>/ZMWB^U5^+1^Z^
M!>?-P\R"^]?7>6NRV.L=<6OO,C&<=_PW._N53\G\?MG213OKVO4_Q4^CHJG2
MG3THW3W<H]KE+7;QGOS+SKWIW@KX<U<[6$=Z(:_9MS0Y>[(0XSG?*+D#E41V
ME4JMMYV_GLNT)2I##:TLV9=^]ZH]'J16ZN4;93XBTT4KJKTF?8T;2,MML97+
MT3RQ;IQ[N&+!O:OJN8V7\S?JCDFY5AW,<&MCSSLAUV1(=<???<6\\\\M3KKS
MKJJK<==<752W''%JK52JUK6M:]:FRB(B,(X&NF9F<9X7\P       )@'D6^5
M9,P1NQ<VN1.-N1,NN,!4O0.O[Y$6U)QBUW)E35=I9#;)<=#K&07: NJ;$ROT
M183ZIJDU?=BJC1'OQO3%^:M%T^K&U$_&UQ[J8]Q$\D3[;EF.CP1.,K;E[LU6
M.CK&H4X79CXJF>*)]W,<LQ[7DB<>&8PE'D8)*
M  !5D;[^?3='TL[&^6%X+0Y#T&SYJCR85ISWIM[SM?E2Q.93%    !)N]F3^
M?7DY]$V(_+!TC3UE^@Y;SM7DI&]7/IN9\U3Y29"0^EH     #0/D;YG_  =X
MNL3V=D;ZQ&Y93 HXBNOM>2V]AYTN6W6E/4)=EQAR<SCTI?7JFMW?MS-:4K_B
M?@-]IV[.MZG,3EK%<6I]W7X%/9QJPQ][$M'J&\FC:;$QF+]$W8]S1X578PC'
M#WTPC4<R_:(]W[58NN%\3L67H3#9C3T-W8&0*M]^V_<8SR%-K<MJ&*R\5P);
MC+BDUK']])S2TI=CSF%TZ4DC1_5[DLK,7M5J^'O1MZ$8Q;CL^ZJ[?1CBFF4=
MZOO]G,S$V=+I^ LS[J<)N3V/<T]KI3QQ,(ZUZO=YR6[W/(,BN]SO]^O4Z3<[
MS>[U/EW6[W:Y375/S+A<[E.=?FSYTM]:ENNNK6XXNM:JK6M20Z**+=$6[<13
M;IC"(B,(B(X(B(X(<#777<KFY<F:JYG&9F<9F>69GAE\P^GR     !O1Y<_#
MJ^<W^5& :=CQYK>#Q92,PV[?(M'44L.LL?E17+_6DMKW4.Y9"X\S:+>Y[KLG
MSVEJ35M"ZTT>\6L4:)I=S.3A\/,=&W'+7/!V8CVT\T2W6[^DUZSJ=O*1C\#$
M]*N>2B.'MS[6.>862-@L-FQ:Q67&,=ML2S8_CEIMUAL5G@-)8@VJS6B&S;[9
M;83"?<LQ(,*.AIM%/0E":4*YW+E=VNJ[<F9N53,S,\,S.V9GLRL'111:HBW;
MB(MTQ$1$<$1&R([4/K'P^P                           %?+YU?+RO*K
MFKF%MQZZ.3=7Z%K-U#@B6WTN6Z?<K)<'4[ RJ&EKK'<3?LM:=89DH4M,JVV^
M&NE>G1*9^W,TC[KT6BJY&&:OX7*N6(F/ I[5.V8XIF4$[X:K]YZQ73;G'+6,
M;=/),Q/A5=NK9CQQ$.11UKE0    ?Z;;<=<0TTA;KKJTMMMMIJMQQQ=:)0A"
M$TJI:UJKTI2GIK4<&V3AV1PK'_RM^)+?#7AIK#6=TMR(.Q,CB5V5MM2F*,RZ
M[!S&-#E3;1-Z>E;V'V=B%9**Z]%TMW?3IWU*Z;SZM]\:Q=S-,XY>F>A;ZE/!
M/OIQJ[:P6[6E_=&D6\O5&&8JCIU]:KBGJQA3VG0XY]O@    01?/[XG_ *!N
M8JMQ8];T1<"Y/6Z;G#7J[/A1H6S+(N#;]EP?157B.W21.@WMQU5:5<D7=Y-$
M]&^M9SW"U7Z_H_U.Y.-_*S%/9HG&:)[6$T]BF.5"F_.E_4M6^MVXPL9F.E[^
M,(KCM[*NS5+A4=PXH    'K< SG)M8YUANR,+N+EGR_ LHL.8XQ=&NO?;[_C
M=TBWBTRZ)HI/?1B=#0JJ:UZ*I2M*^BIY9BQ;S-BO+7HQLW*9IJCEB8PGV'K8
MO7,M?HS%F<+M%451/),3C"SIXO[[QCE#Q^U/OS$:MMVC9F'6R_NV]#Z)*[%?
M.U4+)\9DO-J4A<W&<DB2X#U:5Z5=CJK3T%:-3R%W3-0NY"][>U7,8\L<--7O
MHPF.RL;IN>MZED;6>M>TN41.')/!,=J<8[3/)@,X
M       !#>]IL^?7C']$V7?+!HF#U:>@YGSM/DHE]8WIN6\U5Y2,B26CD
M  "UBP'\Q,*^"6.?B>&5:S'R]?7GORLW8^0HZD=YZT\7J
M                     5.!:M5\     "4W[,-^??+_ ."6G/QQL(B_UF?(
M93KW.]0DOU<?+YOJ6^_4EZ$2)5                              &%>1
MN\<4XU:*VIO?-G$4QW6&&W?)WXJI"(KMYN,9GP+!C4)]Q*FT7/*L@D1;;$[J
M=M9,INE?14S=.R-W4L]:R-GY2[7%/8CCJGFIC&9YH8>H9VUIV2NYV]\G;HF>
MS/%'9JG"(YY5C&U=E97N79>>[8SF=6Y9?L?+K_F>12^YVK:KKD-RD7.4S%0\
MXZMB!%7(\*,SW52RPA#:>B4TH67RN6M9/+6\I8C"S;HBF.Q$8=WEY95RS68N
MYO,5YJ].-VY7-4]F9Q[G)S/ GN\     =$?*RXD_]9/,S6&MKO;:W#7.,RJ[
M,VTE;3CD-S ,.E0Y,NRS5-IKX;&87F1"LM:]R%)I<*J36E4G/;T:M]SZ-=S-
M$X9BJ.A;Z]6.WWL8U=IO]VM+^]]7MY>N,<O3/3KZM/%/6G"GMK'MMMMIM#32
M$---(2VVVVFB&VVT4HE"$(32B4(0FG2E*>BE"NO#MGA6!X-D<#_8    P9R9
MT1C/)S0.V=!Y<JC-EVAAEUQOWP\&DARQW=Q"9F-9+'CJ4A#\S%\DB1+BPA5>
MQ3T5-%=:=:&=IN>NZ9G[6?L^WM5Q.'+'!53V*HQB>RPM1R5O4<C=R-WVERB8
MQY)XI[4X3'85B&?X-DVL<ZS+6^:6YRSY?@647[#LGM;O7OM]_P ;NDJSW:)5
M54I[Z,3H:TT52G15*4K3T5+,9>_;S-BC,V9QLW*8JIGEB8QCV%<;]FYEK]>7
MO1A=HJFF8Y)B<)>2/5Y     ZJ^3=RTKQ/YN:^F7RY>HZTW$MK3NQJ/OK:@0
MXF53HB,5R61W+I&8_)G,6H3STAQ*JLVUR8E-4^)6IRV^&D_>NBW*:(QS-GXR
MCE\&/"CWU..SEPY'3;I:I]UZS;FN<,O>^+KY/"GP9[56&WDQ6'17U/0
M                   8FWY\Q6Z?HFV-\C[R9>0].L^=H\J&+GO0KWFJ_)E5
MDEH%:0     )-WLR?SZ\G/HFQ'Y8.D:>LOT'+>=J\E(WJY]-S/FJ?*3(2'TM
M      : \C/-"X-<7X\QK8V^\1NN3Q:.)3@&N92-C9N[*13NI"EVC%5SX^./
MNII6J%WB1;F%=/\ Q.M:4KO].W8US4YB<O8KBU/NZ_ I[.-6&/O8F6BU#>31
M=-B8S%^B;D>YH\.KL84XX>^F(1H^9OM#^\MMP[O@_%/%G./^'3:/PW=@7>1"
MONX;E!6M2:.6U3"7L8U^Y*B*[7*1??2<POHN-/:72BB2-&]7V1RDQ?U6KZQ>
MCW$8Q;B>?W5?;Z,3QTRCS5]_<[FHFSIE/P%J?=3MN3V.*GM=*>2J$=V]7N\Y
M+=[GD&17>YW^_7J=)N=YO=ZGR[K=[M<IKJGYEPN=RG.OS9\Z6^M2W775K<<7
M6M55K6I(5%%%NB+=N(IMTQA$1&$1$<$1$<$.!KKKN5S<N3-5<SC,S.,S/+,S
MPR^8?3Y      VSX/\5,JYG<F=:Z%QI,J-"R*ZTN><Y!':4M&):[L=43LPR-
MYSPG6&7V+:FL>#1[M:D7.3&CU513R35:WJEK1M-N9^YA-5,84Q^M7.RF.[MG
MDIB9XFTT;3+NKZC;R-O'"J<:I_5HCVT]S9'+,Q'&LN</Q+'<!Q/&,&Q"U1;%
MBF&X_9\6QFRPDU1#M-@L%OCVJT6V,FM:UHQ"@16VT]:UKT3Z:UJ5MO7;E^[5
M?O3-5VNJ:JIGCF9QF>W*Q%JU;L6J;-J(IM44Q3$1Q1$81':AZ,\WH    #7'
MF+?JXMQ&Y3Y.E<AM6.<<=WWY+D.C:I:*VC663W"BXJ75MM*D)K'ZHHI24U5T
MZUI3TFQT>W\+JV5M;/"S-N.[73#7ZM7\%I69N?JY>Y/<HF57\6:5O      E
M-^S#8PU+SKE_F=4L^/8,2TYC#:E*51^C677C8=U>2VBC54*94O"4=]:K36BJ
M(Z)5UK5,7^LR[,6,I9XJJ[E7BQ1'^I)?JXMXW\W>XZ:+<>--4_Z4O0B1*H
M                                                           $
M #SZ_P"ICN+X):@^K'&2>]Q/[:L]>YY<H,WW_N*[U+?D0XWG8.2    !MCP(
M_?HX7?Q9<<_K@PXU6O?@>=_E+W\.IM-#_&LG_-6OXE*S>*TK&
M            "KUY<_O7<G?XA=T_61DI9O2?PK+?R]OR(5NU7\3S/G[GERUZ
M-@P                   =4/*@N_E_XCON/GG.;);S";Q:7:Y6K\=N.%3<B
MU1-R9;RJLW[8<^RKN]W6S8I+;:H\%ZU^]:G%T?ER*M-*95R^]5&OW<A\!H=,
M3-<3TYBJ(KBGDHB<(V\<]+I<41C.+IMUZ]"M9Z+^M53'1F.A$TXT8\M<QC.S
MBCHX<<SA&"P%USM#6^W\7A9MJK/<0V/B-PZTAY)A.16K)K,ZXE*5.1_7[1*E
MQVY;'=2CK*U)=:5[E:4JI6A >8RN9R=V;.:MUV[T<5433/<GOISR^9R^;M1>
MRU=%RU/'3,3'=A[H\'N                         "K(WW\^FZ/I9V-\L
M+P6AR'H-GS5'DPK3GO3;WG:_*EB<RF*    #IOY9/F-?RYLZV=FOZ'/TQ_I'
MQ*T8O[V?I"_1[[S>]5X5=O7O7/R'SCWQ\?N\/PO"8[?[W?7\!S6\N[O]16+5
MGX;X'X.N:L>AT\<8PPPZ5.'LNCW<W@_I^]<O? _#?"4Q&'2Z.&$XX^UJQ]AV
M0^]"_P#T._\ W+__ (_G'_EC_P#W?[/_ -KK?S)__B_WO_J/O0O_ -#O_P!R
M_P#^/X_+'_\ N_V?_M/S)_\ XO\ >_\ J?FF^U!35Q746[A)%BS:TIX$B;R,
M=GQ6U=R:JJ[$8T9;77J51UI2E'V^E:TKUKTZ5_:?5E3CX6=F:>:SA_\ ZSWG
MY/K(G#P<G$3YW'__ #COL39-[35R!EI?IAO&K3EA6JJ?5E9-D>:Y:EE-(RD*
MH^BU2<*K)K696CE*I4UT:I5OI55?$IEVO5KI\?+9F]5U8II[_2_Z[C%N>L;/
M3\CE[-,\\U5=[HM3\_\ :!_,9S-$ANPY7JW5:9%*II^0&K[3+7'2I;JE4CN[
M)E[#=16J'*(HJJE+31":TK1?55=KE]P-W;.'PE%V[UZY_P!'0:N_OUO!>V45
M6K75HC_7TG.O;_-GESOMN3%V]R-V_F]JF=_K&.7'-KU%Q%7B)[7.W#K5)@8L
MSWIIT5V0T]:>BIT.4T72<AA.4R]FBJ..*8Z7C3C5[+09O6-5SV,9O,7:Z9XI
MJGH^+&%/L-7C9M:        ?0M%HNN07:UV&Q6V=>+W>[C"M%GM%LBO3KE=;
MK<I+4.WVVWPHR')$R=.EO(:::;2I;CBJ)32M:TH?-==-NB;E<Q%%,3,S.R(B
M.&9GDA]4457*HHHB9KF<(B-LS,\$1SRL*?*3\OJ'P/X[LQ\KBQ']];91:<JV
M_<FO ?K9768KJL?UO F,*=;?MV$L3WDON-K<;DW.1*=;6IE3%$5_WLU^==U#
M&U,_4+6--N.7EKF.6K#9R4Q$<.*>-UM"C1,AA=B/KUW"JY/)R41S4X]N9F>#
M!U6.6=,                            YO>:YRY1PYX8[*SNSW!$+9.:Q
MZZMU,A$BL>:WF>81)<9>00U-KH\E["\>9G7=M5*5161#::5T\6E3H]U=)^^-
M9MV*XQRU$].YR=&GBGK3A3V)F>)S^\^J_=.D7+]$X9BOP*.M5Q^]C&KLQ'*K
MDE*4M2EK552E5JI2E5JI2E*KUJI5:]:UK6M?34L0K^_X     '8'R2>(M.4G
M-;%+WD5LI.UAQ_;C;=S:DAM2H5QO-KF);USC+BNBV5N73+TM376'4U;DVVUS
M&Z^FM#D=]=6^Z]%KHMSAFLQ\73RQ$QX=7:IV8\4U0ZO<[2OO+6*:[D8Y:QX=
M7/,>TCMU;<..*9A8'$!)U      Y8><;Q0IRMX/['MMEMM9VQM1MJW)KFC#*
MGILFY8?!F.9)8(S;:VW9+F2X;(GQ66*5K1<ZL9?:I3::'4;GZK]U:W;JKG#+
MW?BZ^3"J=D]JK"9GDQ<SO;I?WGHURFB,<Q:^,HY<:8VQVZ<8[."N_+!H%
M   EC^S:\M/G4X9Y7=?_ -1N+4C,M[_]E:MD8Y!JXC_]A=&(R%__ *]ZB/\
MQ%$5>L?2?DM8M1_^NY[,T3/LTS/5CD2AZO=4^5TB[/\ ^RCO5Q'L58=:>5+(
M(I2@                            AO>TV?/KQC^B;+OE@T3!ZM/0<SYV
MGR42^L;TW+>:J\I&1)+1R     !:Q8#^8F%?!+'/Q/#*M9CY>OKSWY6;L?(4
M=2.\]:>+U                                    *G M6J^     !*;
M]F&_/OE_\$M.?CC81%_K,^0RG7N=ZA)?JX^7S?4M]^I+T(D2J
M                   (GWM(O+U*&-:<+<0NC:G'ZQ-N;B1%712VFFZR(6ML
M7EK16J6ZO.>NW>5&7T72B+<]3W*Z5K*OJYTC;<UF]'_Z[??KJ[U,3UH1AZP=
M5V6]'M3^W<[U$=^J8ZLHF)*R+@     )SOL^_$9>C>*,[?.4VOU3/N34Z#D-
MOK(13UNW:FQWUV+@C":+;JJ-^4LJ=.O"JMKJB5"EP:KIW,THF$-_]6^O:K&0
MM3C8RT3$\]R<.EW,(IYIBKE31N+I7U+2YSUV,+^9F)CFHCVO=VU<\33R.^1P
M;N      (2OM$_$^FK.2>*<E\9ME6,0Y#V=4+*W(T=5(D#:V$1(4"<Z^MI-(
M\2N5XDN!):17HY)E0I[W55>[I-/J]U7ZUIM>FW9^.R\XT\]%6V/%JQCFB:80
M[O\ :7]6U&G4;<?%9B/"YJZ<(GQJ<)YYBJ4=HD)P(     %C+Y37+2G+_A7K
M/-+S<O?#9&!Q_P!%.U:O/H>G/Y=AL2''CW^97OJZMW,,:?@W1Q:DH3ZS*>0F
ME:-]2O&]>D_=&LW;-$89:YX=')T:N*.K.-/8B.5/VZ^J?>NCV[U<XYBB.A7R
M]*GC]]&%79F72HYMT0                       Q-OSYBMT_1-L;Y'WDR\
MAZ=9\[1Y4,7/>A7O-5^3*K)+0*T@     =-_+)\QK^7-G6SLU_0Y^F/](^)6
MC%_>S](7Z/?>;WJO"KMZ]ZY^0^<>^/C]WA^%X3';_>[Z_@.:WEW=_J*Q:L_#
M? _!US5CT.GCC&&&'2IP]ET>[F\']/WKE[X'X;X2F(PZ71PPG''VM6/L.R'W
MH7_Z'?\ [E__ ,?SC_RQ_P#[O]G_ .UUOYD__P 7^]_]1]Z%_P#H=_\ N7__
M !_'Y8__ -W^S_\ :?F3_P#Q?[W_ -3\D[VH*>Y%=1;.$L2).KV>!(G<BGKC
M%;Z.(JYXL./HZUO/=[-%)3T?1VJK15>ZE*IK^T^K*G'PL[,T\UG#_P#UGO/R
MKUD58>#DXBKGNX__ .<=]B;)_::>0<NCWY&<:]-V&JO_ )?\I\BS;+J-?[-V
M_P"-2U2L)\?_ &OW?N?#_P /W'][_$,NUZM=/CY;,WJNK%-/?Z3%N>L7/S\C
ME[-/9FJKO=%J?L'V@7S&\U2^BP9?K#5*'Z53TU]JZS3%,I4ZIQ5&'=ER-BOH
MK5I7A=W=5:44I5-:.>[-KE]P=W;/RE%V[UZY_P!'0:N_OUO!>]I7;M=6B/\
M7TW.K<'-7EOOUN9%W!R,V_G-IGH4W+QFYYO>X^'.(6E27*)PJV2H.)L^*A7:
MOLA)JM/2BNM*4I3H<GHNDY#"<GE[-%<<<4QTO&G&KV6@S>L:KGL8S>8NUTSQ
M35/1\6,*?8:PFS:T         3R_(]\OM[B1H)W;^RK+2%OG?UMM5VND2=%4
MU=<!UNFE+ABV#N)D4I(@76YJ=3=+RU1+2O6%1HSR*K@)56"M]M?C5L_]4RU6
M.1R\S$8<%=?!55SQ'M:>;&8]LFW<S0ITK(_6\Q3AGK\1,\M-'#33S3/#5SX1
M/M7<0XEV8     &EOF.SY5MX"\R)$1=&W7.-NWX"U*0E=*Q;KA-XM<U':NE:
M4JY"F.)I7\*:UZTZ5I2IN=W:8JU[)Q/!]9MSW*HF/9:?>"J:=#S<QP_5[D=V
MF8E6A%DE=P     )@OLQ=M?:U?RRO"EM5C3L]UA;64)4OQTOVG'LLE2%N)JW
M1NC2V[RU1%:*K6M4KZTI2E*JB+UF51.:RE''%NN>[-/^"5_5Q3,9;-5\4W*(
M[D5?XI11&*20                  12.?GGI<MN*W+[=F@->Z[XZ7G#=;WR
MQVRQW/,L2V7<,FE,7/#L<R!]=VF63;F.VI]Y$V[NI15F$PFC24TK2JJ54J5-
M!W'TG5-(LY_,7,Q%ZY3,S%-5$4[*IC9C;F>+EE&.N;Z:IIFJWLC8MY>;-NJ(
MB:J:YG;3$[<*XCCY(:>?>5.='ZJ.)OQ%W!^W8V_Y;Z'\[F_&M_1-3^8>M?-9
M7Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF
M_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YO
MQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;G
MTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<
M'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T
M1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y
M4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A
M^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>
MM?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?
MJHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A
M_.YOQK?T1^8>M?-97Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-9
M7Q;GTA]Y4YT?JHXF_$7<'[=A^6^A_.YOQK?T1^8>M?-97Q;GTB5QP#Y!9GRI
MX@Z3W_L*V8Q9LRV18[Y<[Y;,-A76WXS%?MF8Y'C["+3#O=ZR*ZL,KA6AI2Z/
M37U5=4JM*T36B4Q7KVGV=+U>]D,O-4V;=41$U3$U;:8G;A$1Q\D).T//WM3T
MJSGK\4Q>N4S,Q3C$;*IC9C,SQ<LMPC4-L                   !  \^O\
MJ8[B^"6H/JQQDGO<3^VK/7N>7*#-]_[BN]2WY$.-YV#D@    ;8\"/WZ.%W\
M67'/ZX,.-5KWX'G?Y2]_#J;30_QK)_S5K^)2LWBM*Q@
M      J]>7/[UW)W^(7=/UD9*6;TG\*RW\O;\B%;M5_$\SY^YY<M>C8,
M                #,^D.1.\>-F7,9SHK:.7ZQR5I;2GY>,W1R/!NS3"JK;A
M9%8I%)%@R>V477K6)<8LJ*JOIJW6M*&'G=.R.I6?@,]:HNV_VHVQSQ/#3//$
MQ++R6?SNGW?A\E<KMW.:=D]F."8YIB82K>!OM#F'9P_9]:\V[/;==9&\F+;X
M&[L4AROR"NTKHAA#N=8VA4R=ALJ4NE%.3H59%LJXXI2V8#".I%FN^KZ]8B<S
MHLS<M\,VZO;1U9X*NQ.%7/5*3M$W]LWIC+ZS$6[G!%RGVL]:.&GLQC'-3"33
M9KS9\BM%LO\ C]UMM]L5[@1+K9KU9IT6YVB[VN>PB5 N5LN4)U^'/@38SJ7&
M7FEK;<;512:UI6E2-:Z*[=<V[D33<IG"8F,)B8X8F)X)A(M%=%RB*[<Q51,8
MQ,3C$Q/!,3QP^D?+Z                       %61OOY]-T?2SL;Y87@M#
MD/0;/FJ/)A6G/>FWO.U^5+$YE,4                      F!^1EY4[^"L
M8[S8Y&8W5G,KC#I<= Z_O<5UM_$[7<&%MM[0R.W26T=F1W>"]6MCCN)52%$=
M]=K3UER-6)$6^^],7YJT73JOB8G"[7'NICW$3R1/MIXY\'@B<97W+W8FQ%.L
M:A3\=,8VJ9]S$^[F.6?<QQ1MX9C"481BDD
M   @D>?MR^_Z@.7'Z%\8N;4S7'&*/<<.;5$=\2-<]HWE4&1LJX.+31'>NR2+
M?$L=&U45X$BUR5H5T?50G+</2/J&D_7;L89G,X5=BB,>A';QFKGBJ.1"F_.J
M_7M5^IVYQR^6QI[-<X=.>UA%/-,3RN$YW+B@     + [R2.(M>+?"G%+WD5L
M5!V?R <C;=S:DAM*9MNLUTAI:USC+BNB'D-VO$%-376'4T<C7&Z3&Z_@H0%O
MKJWWIK5=%N<<KE_BZ>29CV]7;JV8\<4Q*==SM*^[='IKN1AF;_AU<T3[2.U3
MMPXIF78$Y%U8      "N,\UKB@KB!S6VI@-JMU8&O<RF5VKJJB&ZMQ&\'S>9
M.EHLT*G3_P"5Q#(8]PLS?6JEJ;MZ5JK6J^M;$[JZK][Z+:S%<XYBB.A7UJ8C
M;/6C"KMJ_P"\^E_=6L7;%,86*YZ='5JQV1U9QI[3G&=$Y\    &>.,&^\GXO
M\@=3[\Q&KCEWUGF-LO[L!#ZXR;[8^Y4+)\9DO-J2M$+)L;ERX#U:5ZT:D*_M
M,'4\A:U/3[N0O>TNT3&/)/#35V:9PF.PS=-SUS3<_:SUKV]NN)PY8X)CMQC'
M;6=. 9SC.SL%PW9&%W%N\8AGN+V',<8NC73LN%@R2UQ;Q:9=$T4KLJ_!F(55
M-:]4UK6E?30K/F+%S+7Z\M>C"];JFFJ.28G"?96.L7K>9L49BS.-JNF*HGEB
M8QAZX\GJ                          !#>]IL^?7C']$V7?+!HF#U:>@Y
MGSM/DHE]8WIN6\U5Y2,B26CD     "UBP'\Q,*^"6.?B>&5:S'R]?7GORLW8
M^0HZD=YZT\7J                                    5.!:M5\
M"4W[,-^??+_X):<_'&PB+_69\AE.O<[U"2_5Q\OF^I;[]27H1(E4
M                     \-L[8V)Z@UUG.U,[N-+3AFN\4OV9Y/<.VCCD:RX
M[;9%TGUC,U6BLJ:XQ&JAAE->]]Y26T]5*I0]\ME[N<S%&5L1C>N5Q33'/,X1
MVN6>)XYG,6LIEZ\S?G"S;IFJ9YHC&?\ X5CG)C?.6<GM][4WUFKKE;[LO+KC
M?_4UO5D-V2SU4F'C6,Q'5435<#&,<B1;?'K6G6K,9-:]:]:EEM-R%K3,A:R%
MCY.U1$=F>.KLU3C,\\JY:CGKNI9Z[GKWM[E<SV(XH[$1A$=A@PSF$    #;#
M@]QAO7,+E'J30=K]<CVW+LC9D9I>(3?<[CNOK&A5WS6]I<6E4=F5'L,1YN)X
MO1MV>ZPUUZN4I75:WJ=&D:7=S]6'2HI\&)XZYV4QW>'FQEM-&TVO5M2M9&G'
MHUU>%/)3&VJ>YP<^$+,FP6&S8M8K+C&.VV)9L?QRTVZPV*SP&DL0;59K1#9M
M]LML)A/N68D&%'0TVBGH2A-*%;+ERN[75=N3,W*IF9F>&9G;,SV96)HHHM41
M;MQ$6Z8B(B."(C9$=J'UCX?8     '/[S/N*:>8G#';&JK= I.SNTP$;%U7V
MMT<DIV+A+$N?:(,/_"?JA_*+8]-LBE43W)9N:^E:5]--_NSJOW/K-K-53A8F
M>A7U*MDS[V<*O>M%O)IGWMI%W+4QC?B.G1UZ=L1VXQI[:MS<;<:<6TZA;3K2
MU-N-N)JAQMQ%:I6A:%4HI"T*ITK2OII4L9P[85\X-D\+_(     =ZO9^N6RM
M'<M7]%Y-=JQ=?<F($?&8K4E^J8-OVM84RYN!3D)4ASPW\@9?FV3L;HBLB5/B
M>(JM&4=.$W^TGZ]I/UZW&.8RT]+GFB=E4=K95S1$\KM]Q=5^I:I]2N3A8S,8
M<T5Q[6>WMIYYF.1.E(/32                       ,3;\^8K=/T3;&^1]
MY,O(>G6?.T>5#%SWH5[S5?DRJR2T"M(                       D@>2-Y
M4UQW;E..\O.0..OQ-+X?=6+KJ?$+S"JBFVLJM<A2X^23(TCHIW7V+W!A*D]4
M5:N\]%&Z55'8D(=CK?7>FG)6JM(R%6.<KC"Y5$_)TSQ=>J/%C;PS&$@[G;L5
M9R[3JN?IPR=$XT4S[NJ./JQ/C3S1.,T\AE+X      #2#S*_Z?W,7^'K9WR9
MG&[W;_'\G_,4=^&FWB_ LWYBOO*T\L@KP     !,@]F3^8OD[]+.(?(]TA_U
ME^G9;S57E):]7/H69\[3Y*3>1HD8                  %=/YR?]3'E9\+<
M2^K'!RPVY_\ ;65ZE7EU("WM_N+-=>GR*7,@Z5S@                  +%
MCR;/Z9W%/X)9;]9V<%>=\/[ES77I\BE/NZ7]NY7J5>74Z;G-.C
M          @ >?7_ %,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_]Q7>I;\B'&\[!
MR0    -L>!'[]'"[^++CG]<&'&JU[\#SO\I>_AU-IH?XUD_YJU_$I6;Q6E8P
M                       5>O+G]Z[D[_$+NGZR,E+-Z3^%9;^7M^1"MVJ_
MB>9\_<\N6O1L&                       =9?+<\V3=' N_P /%+HY<MG\
M<+I/\3)-5SYU5S,:K*>JY,R/6$^:YX6/7JBW%.O05*3;+G6JJ/):?4B6SRF\
M>ZF2UVW-VG"UJ,1LKB.'FKCCCDGVT<6,;)ZC=[>C.:)7%JK&YI\SMHF>#GHG
MBGFX)X]NV)X^A=^ZFY,ZPQW<&ELPMN:8-DC%%1Y\%RB9ELN"&F7)U@R&VKK2
M98LCM57TIE0I*4/,U52M:52I"E07G\AF]-S-64SM$T7Z>*>..*8G@F)XIC8F
MW(Y[*ZCEJ<WDZXKLU<?)/'$QQ3''$LQF&RP                     "K(W
MW\^FZ/I9V-\L+P6AR'H-GS5'DPK3GO3;WG:_*EB<RF*
M  !_U*5+4E"$U4I5:)2E-*J4I2J]*)32G6M:UK7T4 E@^3]Y*TQ$S&>5/,O$
M/5FHWJ5_U)HC)(=:279-*IE6[-=IV:6W3U9F-T0[;[#(3XBW.CL]"$HI&=BK
M>[?.GHU:7H]>,SC%R['LTT3WZH[%/+$G[I[GSC3J>KT<]%N?8JKCO4SV:N1+
M-(I2B                             ::>8!RFM_#?B;MS>3CT>F2V:P.
MV+7$&2TF2W=-F9,E=HPN,[$75-)<&%=7Z3IK?6E:V^(_6GIH;C0-+JUC5;.1
MV_!35C7/)13MJ[<QLCGF&HUW4Z=)TN[G?^Y%.%'/7.RGM1.V>:)5I=WN]TO]
MVNE]O=PEW:]7JXS;O=[I/?<E3[E=+E)=F3[A-DNJ4[(ES);RW''%5JI:U5K6
MO6I9&BBFW1%NB(BBF(B(C@B(X(CL*\5UU5U377,S7,XS,\,S/#+YY]/D
M'0WRM^)+G,KF7K#6=TMRYVN\<EUV5MM2F*O1*:^PZ3#E3;1-Z>A#.87A^%9*
M*Z]45N/?3KV5.?WGU;[GT>[F:9PS%4="WUZN"?>QC5VF^W:TO[WU>WEZHQR]
M,].OJT\4]:<*>VL?VVVVFT--(0TTTA+;;;::(;;;12B4(0A-*)0A":=*4IZ*
M4*Z<.V>%8+@V1P/]@       1]_:&.)WZ8>*]EY#8U;ER,VXV79<R\^JQ_%D
MW'5692;?:\G0XEENLA_\F;VU;KDE:E5:B043W*TIWJ53O_5]JOU/5*M/N3A8
MS,;.:NG&:?&C&.>>BX7?S2_K>F1G[<?'9>=O/15A$]R<)YHZ2#P38AD
M":W[.GRTILWCSE_%K*+EXV7<?[FN^86B2^A4FXZGS>XRIOJT=+BURY7Y&YHY
M+:><KT;CQ+I;V$4HE%*$,>L/2?JVH4:I:CXG,1A5S7*8P_S4X8<LTU2F'<#5
M/K.0KTR[/QMB<:>>BJ?]-6/8B:82-".W?@
M0WO:;/GUXQ_1-EWRP:)@]6GH.9\[3Y*)?6-Z;EO-5>4C(DEHY      M8L!_
M,3"O@ECGXGAE6LQ\O7UY[\K-V/D*.I'>>M/%Z@
M             %3@6K5?      E-^S#?GWR_^"6G/QQL(B_UF?(93KW.]0DO
MU<?+YOJ6^_4EZ$2)5                             (TGM&O+W\@]/8-
MQ#Q.Y+9R;<TB/G6R*17^QR%J_%KFJEBM,IM"D.41F6;0J.H52M4^#8GVUIJE
MZA)'J[TCX?.5ZO=CXJS'1HYZZHVS[VGRHY$=^L#5?@,I1I5J?C+WA5]2F=D>
M^JC_ "SRH99,:(P     )DGLXG$5&&ZHS[F#E=JHC(MLRI.O-82)3"TOP]<X
MM<Z5RRZP7%H12K&6YM 1&76G=TI8$U36E'%4K#WK%U;X;-V](M3\7:CIU]>J
M/!B>K3./OTM>K_2O@<K<U:['QEV>C1U*9\*8ZU6SWJ361JD8        KVO.
MFXG)XL\X,\>Q^UUM^MMXT<W+@E&FZ)@PW\FG2:9UCL:K2$1HU+)F[4Q;$1NE
M*1;9+AIZ=JDUK8#<S5?O31+<7)QS-CXNKE\&/!GMTX8SQU1*"-\-+^[-9KFB
M,,O>^,IY-L^%':JQPCBB8<E3JW+     ^M8+]><6OMER?';E+LV08Y=K=?K%
M>(#JF)UJO-HF,W"V7*$^GW3,N#-CH=;73TI6FE3YN6Z+M%5JY$3;JB8F)X)B
M=DQ/9A]45UVJXN6YF+E,Q,3'#$QMB>U*S/X2\E[/R\XMZ>W];/5&)V;8K'IE
M]JAJKX5@S^QNNV+.;(VTM:Y#42%D]OD^J5=[7'H*F7NG:XFM:U:UIM>D:I>R
M%6/1HJ\&9XZ)VTSVZ9C'GQCB6+T;4:-5TVUGJ<.E73X4<E4;*H[4Q.'+&$\;
M:HU;9@                     &)M^?,5NGZ)MC?(^\F7D/3K/G:/*ABY[T
M*]YJOR959):!6D                      D6^4OY+.1\@IV,\B^55AGXQH
M2,_'O.':WN3<BW9)N:C*J/1)MT9[F)N/ZU>=3157%=DN\-4K2/1N,XF4N/-Z
M]\[>GTU:=I=459^=E5<;8M]CBFOV*>/&=CO]UMT+F?JIU#4Z9IR,;::)V3<[
M/'%'LU<6S:FJ6RV6VR6VWV:S6^#:+/:(,2V6JU6R)'@6VV6V!';BP;?;X,5M
MJ+"@PHK26VFFTI;;;31*:4I2E"&:JJJZIKKF9KF<9F=LS,\,S/',I?IIIHIB
MBB(BB(PB(V1$1P1$<C]Q\OH      !IYYA=L8NW WF;%DK>0VUQ>WK<TU84A
M*ZOV76N27B*A57&W$U9<E0$)<ITHJK=:TI5->BJ;?=^J:-=R<Q]JM1W:XC]+
M4Z]3%>B9R)^S7)[E$S^A69EE%=0     )>GLPUV\;!>7]B];[_>[+=.7;U#K
M_P#+>_5GV'#];Z=/1Z][P]GX:]?5_P"S^V)/691A?R=>'#1<C'L31WL?92KZ
MN*\;&;HQX*[<X=F*N_A["4V1>DL                  %=/YR?]3'E9\+<2
M^K'!RPVY_P#;65ZE7EU("WM_N+-=>GR*7,@Z5S@                  +%C
MR;/Z9W%/X)9;]9V<%>=\/[ES77I\BE/NZ7]NY7J5>74Z;G-.C
M         @ >?7_4QW%\$M0?5CC)/>XG]M6>O<\N4&;[_P!Q7>I;\B'&\[!R
M0    -L>!'[]'"[^++CG]<&'&JU[\#SO\I>_AU-IH?XUD_YJU_$I6;Q6E8P
M                      5>O+G]Z[D[_$+NGZR,E+-Z3^%9;^7M^1"MVJ_B
M>9\_<\N6O1L&                        .C'EN^8CL?R_=Q-Y+:Z3LIT_
MF#T.W;;UE6<XS$O=K0XE+.2V%#BJPX.<8XVI2X<A2>U]I3D5VJ6WN]OG=X]W
MLOK^3^"JPIS=&VW7AP3R3RTSQQQ;)C;#?[O:_F-"S?PE.-64KV5T8\,<L<E4
M<4\?!/"L--3[5P'>.M\-VWJ[(X.6X!GUCBY!C-^MZE>%+@R>Y#C,AARB)$"Y
MVZ6TY%FQ'TMR84QEUAY"'6UH37[-Y6_D<S7E,U3-&8MU851/+^F)X8F-DQA,
M;$\Y7-6,[EZ,UEJHJL5TXQ,<GZ)C@F)VQ.,3M9#,=D
M   *LC??SZ;H^EG8WRPO!:'(>@V?-4>3"M.>]-O>=K\J6)S*8H
M        ,MZ2T-N#D=GUJUCI'7^0[%S:[K3X%HL$2CC<.+XB&G;I>[I(7'M.
M/6.*MQ/CSI[\>(Q2M*K<3UH8F=SV4T[+SFL[<IMV(XY[T1PS/)$1,SR,K)Y'
M-ZA?C+9.W5<O3Q1WYG@B.69F(A-$\M'R0=9\4G+'N/D0JQ;?Y"1JLW"RVQII
M<[6>JIB>BV'<?B7"+'<RO+HJJ]U;K,90S%<[?4X[;C5);T-[R;[9G58JR>G]
M*SI\[)G@KK[.'M:?V8VSQSMPB7MW=S<MI?1S>?Z-W/\ #$<-%'8Q]M5^U/!Q
M1LQGO@<&[@                              0KO:+.7E=E[ZQ+BABET<
M=Q'0D5O),\:COI5!NFV,OM,>3#CNI;[VI#F$X7.;9;<HJBF95WG,+313=29O
M5YI'U;(5ZK=CXZ_.%/+%NF=OC51W*:90_O\ :K]8SU&EVI^*L1C5R375'^FF
M>[55'$C@DBH_      G+>SZ<1::2XIS]_P"46RD?/^2\]B]6Q;[:DR[7J3'%
MRH6%Q.URE?!KDMQ=GWA2VE=DF#*@=U.YFG2$=_\ 5OKNJQD+4_\ 'RT83SW)
MVU=R,*>:8JY4S[B:5]3TR<]<CX_,3C'-1&RGNSC5SQ-/([\G!.Y        /
M-YEB..[ Q'*,$RZV1[UBN9X]><5R6SRT4<BW2PY!;I%JNUOD(K2M%-2X$MQM
M7_8H]+-ZYE[U-^S,TW:*HJB>28G&)[KSO6K=^U58NQC:KIFF8Y8F,)CN*QKE
MCQ\R+BMR,V[H')DRE3-<9C<;3;)\MNC;E]Q635%SP[)4I2VTCP\DQ6=#FT[4
MTHGQ^WI2M*TI9?2M0MZIIUG/VL.C<HB9CDJX*H[543':5RU3(7-,U"[D;F.-
MNN8B>6GAIGMTS$M>38,     &\OEP\JY/#?F!J3<K\Q^-AB;Q3#MI1VO$4W-
MUGEZV;9DSC[#+3KTNN/]6;Q'932E7)EM9IUZ=32;Q:5&L:1=R<1C>PZ5'7IV
MT]WVL\TRW6[^ISI.K6LW,_$X]&OJ5;)[GMHYXA91Q94:=&CS84AB7#EL,RHD
MN*\W(C2HTAM+K$B.^TI;3S#S2Z*0M-:I4FM*TK6E2N$Q-,S35&$PL+$Q5&,;
M8E_<_'Z                         "&][39\^O&/Z)LN^6#1,'JT]!S/G
M:?)1+ZQO3<MYJKRD9$DM'(     %K%@/YB85\$L<_$\,JUF/EZ^O/?E9NQ\A
M1U([SUIXO4                                    J<"U:KX     $I
MOV8;\^^7_P $M.?CC81%_K,^0RG7N=ZA)?JX^7S?4M]^I+T(D2J
M                   ^3?[]9L6L5ZR?(KE$LV/XY:;C?K[>)[J6(-JLUHAO
M7"YW*:^KW+,2#"CK=<77T)0FM3[MVZ[M=-JW$S<JF(B(X9F=D1'9E\5UT6J)
MN7)B+=,3,S/!$1MF>U"LZYS<G[SS$Y3;<WY<_6(]LRS(5P\*M$A2NM@U[CS+
M=CPJT5:Z^$S+;L,%EZ;5NB$/7!Z0]VT4XHLEH>F4:/I=G(4^VHI\*>6N=M4]
MV=G-$1Q*[:UJ5>K:G=SU7M:JO!CDIC93'<X>?&>-J6;9JP    9DX]:2R[DA
MN_6&B\%9\7)MG9?:L8A/*0I;%KBRG?%O-_G)1U72V8W9&)-PEU32JDQHRZTI
M6M*4KAZAG;6G9*[GK_R5JB:IY^2(YYG"(YY9>0R=W4,Y;R5GY2Y7$=CEGL1&
M,SS0LZ]4:SQ33&LL U)@L'WNP_6V(8_A6.15=E7DVK'+9&M<5Z8ZA#=)5QEH
MC>+)?K3O?D+6XKJI5:UK1FLS=SF9N9N_.-ZY7-4]F9Q[G)'%"QV5RUK)Y:WE
M;$86;=$4QV(C#N\L\<L@&.]P       #B-Y\_$^O(7A===EX[:JSMA\9ILO9
MML7&:2N;*UZ]'9A[4M=%*]"(42Q1V+Z]7^]7WBHE/I76BNUW$U7[OUF,M<G#
M+YF.A/)T_<3V<<:??.-WWTOZ_H\YFW&-_+3TXZONX[F%7O4"DG9"(     $G
M[V;WEM^2^Q=D<.LIN5&[/LIB3M+5S<AUM#;6>8Y;8\3-[)$2I5'7I628; CS
MDII3L;187:_WG*]8S]8VD_"Y>WK%J/#M^!7U9GP9[54S'OHY$D>K[5/@\Q<T
MF[/@7/#HZT1X4=NF(GWLIB)$"6                      #$V_/F*W3]$V
MQOD?>3+R'IUGSM'E0Q<]Z%>\U7Y,JLDM K2                   !D+5FI
MME[NS>S:WU'@^2;#SF_O>%:\:Q:V2+I<7DIJFC\Q]+*:M0+9"2OODRY"FHL5
MJE7'G$(I55,?-9O+9*Q5F<W73;L4\,U3A'_S,\41MGB>^6RN9SEZ,OE:*KEZ
MK@BF,9_^(Y9G9'&F!^6WY"F&:7DV#=',ANQ[*VG"7%NN.:@BN,W?6F"S4T:D
M,2<L>4W6-L')X#M.VC%.ZQQG**K1,^O@OM1'O'OW>SL59/1^E;RL[)N<%=4?
ML_J4SR^VG]G;$RON]N19R<TYS5^C<S,;8M\-%/6_6F/%C]K9,224I2A*4(31
M*4THE*4THE*4IITHE-*=*4I2E/10CA(3_H        #"_)&P.97QWWWB[*7%
MO9)I?:5@:0RQZRZIR\8/?;<A+4:M4TD.*5)I1*.M.^OH_M,W3KD6M0L79X*;
MU$]RJ)8>H4?"Y"_;CAJLUQW:9A5L%GE:P     )0'LQV7HA;=Y5X#5VM',EU
MQKO+TL=ZZ)<1@^37ZRN.U;HPIM565;"32BJNHJGQ*THE?6M41EZR[/2RF5O_
M *MRNGQJ8G_0DCU<W<,UFK'ZUNBKQ9F/]28>1"E@                  %=
M/YR?]3'E9\+<2^K'!RPVY_\ ;65ZE7EU("WM_N+-=>GR*7,@Z5S@
M          +%_P G2-(B>6EQ1:DLN,.+PO(Y*4.IJA2H\W8N93(CU*5]-6Y$
M5]#B*_@4A5*T_"5XWOF)WDS<Q^O'D4I^W3B8W=RL3^I/EU.F!S;H@
M            ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_]Q7>I;\B'&\[
M!R0    -L>!'[]'"[^++CG]<&'&JU[\#SO\ *7OX=3::'^-9/^:M?Q*5F\5I
M6,                       %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0K=
MJOXGF?/W/+EKT;!@     ROI31NUN1>P[5JG2V'3<\V#?(MUFVK&H$VTP)4R
M+9+=(NUT=1*O=PMEN12);HCCM:+>36M$]$TK7I2N+G<]E=.R\YK.UQ;R],Q$
MS.,\,X1P1,\+*R>2S6H7XRN3HFN_5$X1&$<$8SPS$<#>#^39YF/V4\M^-NL?
M]<&D_K#=K[51XM?[K<_TEO%]EK\:C]X_DV>9C]E/+?C;K'_7 _K#=K[51XM?
M[I_26\7V6OQJ/WC^39YF/V4\M^-NL?\ 7 _K#=K[51XM?[I_26\7V6OQJ/WG
MY9OD[^97 BNRW^*&;+:9I12T0K_KZXRJT4I**>%"M^82IC]>JO31MM5:4ZUK
MZ*5J?M.]^[=4X1FZ,>>*X]F:7Y.Z>\5,8SE:\.S3/>J8^O?EB>81C[:G)_#[
M?#Z4QWI5:63!+IDKGAL)JI:4M8XBZNJD*HGW#-*5=<KZ$)56M#(HWFW?N;*<
MY8X>.J([^#PKW;UZWMJRE_M4S/>Q:_YCQIY&Z[2ZO8&@-V8,ACKXR\QU5G>,
MI9[:QZ*\55ZL,*C?2LMJE>O3TNH__JIUS[.I:=F/1\Q9KZM=-7>F6!=T[4,O
M\O8O4=:BJ._#"9FL,          ) 7D5>8T]QNV['XQ;6OOA:+W9?V&,:N5S
ME5;@ZSVM<?!A6NY4??<HS!QC-U(:M]QI6E&V)GJLNJFFD2U.<#OQN[&I93[S
MRM/_ #K%.V(X:Z(VS'/53PQRQC&V<,.ZW*W@G3\W]VYJK_A7JMDSP45SP3S1
M5P3SX3LVIQI"29@                    %61OOY]-T?2SL;Y87@M#D/0;/
MFJ/)A6G/>FWO.U^5+$YE,4                91U+I#<&^<F:P[3&L\VV?D
MKE6>^U85CMSOST-M^KE&Y5T=@QW8UH@4HRNJI$I;+"$H4I2Z436M,7-YW)Y&
MU\-G+M%JURU3$=S'AGFC:R<KDLWGKGP.3MUW+G)3$SW<.".>=B1'P[]G'V9E
MKMLR[F7F[.K\=KZO*5JK74^V9#L&<A24.+AW[+Z(N.'8MVUKVJI"3>W'*=U*
M+85T41]K'K$RUJ)M:/1\+<_7KB8HCL4[*JNWT>V[[2?5_F;LQ=U>OX.W^I1,
M35/9JVTT]KI=I*>X[\7="\4L'9U]H/6N/:]Q^G@N7)VVQU2+]DDUEOPDW3*\
MFGKE7[)KIV>YH]-D/*;1T;;[&TI12+M0U//ZK?\ K&?N57+G%CP1')33&RF.
MQ'LI+R&FY'2[/P&1MTV[?'APS/+5,[9GLRSZ8#.
M         &O?*WD)C/%7CMMK?^5^ [;M;XC/N\&VOOTC4R#)I%6[9B&,-/?A
M;?R7*)T2"A5*5[*O]WX$U-AI6GW=4U"UD+7MKE<1,\E/#55VJ8F>TP-3S]O3
M,A=SUWVMNB9B.6>"F.W.$=M609[F^2[,SC,-BYG<GKQEV>9/?<PR:ZOJ6IVX
M7[([G)N]UEJJM:U4\>;+6JE*UKVTKT_L++6+%O+6*,O9C"U;IBFF.2(C"/85
MSOWKF9O5YB].-VNJ:IGEF9QEY,]7D    #:SA%QEO7+_ )1:BT'::2V8&8Y/
M&=S.[0Z)H]C^O;)2MXSF^MN.)5';EPL<AR*1*.=$/3ELL]>KE#5ZWJ=&D:9>
MS]>'2HI\&)XZYV4QVYPQYL9XFST;3J]6U*UD:<>C75X4\E,;:I[F.'/A"S+Q
MZP67%+!8\6QRVQ;/CV-6>V6"PVB$CPH5JLMFA,6ZUVV(WUKX<6#!C-M-IZUZ
M(32A6NY<KNW*KMR9FY5,S,SQS,XS/;E8JW;HM44VK<1%NF(B(Y(C9$=J'V#X
M?8         B>^TF<3N]K5',O%K9[IGP-,[8<BL_A:6JX7K6^1S$-4I3W#JK
ME:Y,IWK6O?;F.[I1"25?5QJNV[H]V?\ ]EOV(KCO51'6E&'K"TO9:U>U'_ZZ
M_9FB>_$SU81,B5D7      3\?(OY:5Y*<*[!A>17+UW9''"1#U3DM'WUO3IV
M(M1%R-87]ZCBW7:-2,:CKM?>M55/2;,^OI2BJ4(&WXTG[MUFJ];C#+9GPZ>2
M*O=QW?"[%4)QW+U3[QT>FS<G',9>>A/+-/N)[G@]FF79XXUUX
M              (;WM-GSZ\8_HFR[Y8-$P>K3T',^=I\E$OK&]-RWFJO*1D2
M2T<@     6L6 _F)A7P2QS\3PRK68^7KZ\]^5F['R%'4CO/6GB]0
M                           "IP+5JO@     2F_9AOS[Y?\ P2TY^.-A
M$7^LSY#*=>YWJ$E^KCY?-]2WWZDO0B1*H
M#@-[03R]3I'BM"X_8K=&V-A<EIC]ENK3*Z5F6K4-@4Q*S.;7MJNL>N37%R%9
MD)=31,F')G]BJ+8KT[W<#2/KNJ3J%V/^/EHQCDFY/M8][&-7-,4\KAM^]5^I
MZ9&1M3\?F)PGFHCVW=G"GGB:N1!I)N0P     !*P]FYXB5F7C9G-'+;;7U>S
MMS-0ZA];C)JARZ3FH<_8N5PEO(2XARWVU<2T1GVJU0XF;<655[FZT(M]8VK=
M&BUHUJ=L_&7.Q&RBGMSC5,<U,I-]7VE8UW-8NQLCXNWV>&NJ.Q&%,3SU0EOD
M3)3         'X;G;+?>K;<+/=H<>XVJ[09=LN=OF-)?B3[?/CN19L.4RNE4
M/1Y49U2%IK2M%)56E3ZIJJHJBNB9BN)QB>28X)?-5--=,T51C3,83'+$JSWG
MIQAN'#[EAN'1+[4CWBQK)';G@<V153BKIKK)6T7W"IGK"G7_ %F0S8YS4:4K
MO55,V.\A71254I9+0M3IU?2K.>C#IU4X51R5QLJ]F,8YIA7;7--JTG5+N2GV
ME-6-//1.VGV-D\\2U -NU0    ,H:3VYEVA-NZXW/@<Q<++=:9?9,OLSB7%-
MM27[1-:D/VR;VT5XMLO$2CD26TJBD/1GW&U4JE5:5QL[E+6?RES)WXQM7:)I
MGMQPQSQPQR3#)R>:NY'-6\Y8G"[;KBJ.UQ=B>">99X:4VUB>^=1ZXW-@TJDO
M$]F8=8LQLJ^^BWH\>]0&9;EMF4HE-6KE:9*UQ93:J)6U)96A5**36E*SYW*7
M<CF[F3OQA=M5S3/:GACFGACF6.R>:M9[*V\W8G&U<HBJ.W'!V8X)YV3S%9(
M                   #$V_/F*W3]$VQOD?>3+R'IUGSM'E0Q<]Z%>\U7Y,J
MLDM K2                 &1=8:@VINO)H^&:AUSFNS,JD^&I%BP?&[MDMP
M:9<=0SZY,9M4636!;FEKIXLE^K<=E/52UI32M:8^9S>5R5KX;-W*+5KEJF*8
M]GAGFC:R,ME,UG+GP.4MUW+L\5,3,^QP1SSL2#.(GLYF[,_<M.5\N,TA:5Q-
MRK<F1KO#95LRO:D^/_AK]5G7AKU_!L/J^VYU2ZER]/HJFJ'(K:J]:<!JWK$R
M67B;6DT3>N_KU8TT1V(V55?Y8Y)=WI6X&<OX7=5KBS:_4IPJKGM[::?\T\R5
M-QEX?<=.(&'IPW0.LK%A,:0Q&;ON0):5<LTRU^,BE*3,KRZX5D7R\N5>[G$,
MK=I$C*<52.RRW6B*1;J>KZCJ][X;/W:JYXHX*:>K3&R._/',I,T[2=/TJU\#
MD;=-$<<\-576JG;/>CBB&S!K6Q          #^,B.Q+8?BRF&9,62RY'DQI#
M:'F)##R%-O,/LN)4VZRZVJJ5)52J5)K6E:=#]B9B<8V3#\F(F,)VQ*JHV+B$
MK7VP<[P*=WUFX1F63XA+\3NHYZUC5[G6:1WT6S'51?BPJ]>K:*]?^ZG\%+29
M>]&8R]N_3P5T4U=V(G]*LV8M38OUV)X:*YI[DS#QI[/$    ';#V?W9#>!^8
MSA]@>D-QF=MZSV;K=2W5=C;CC%IB[*B1_$JM"$.29NNFD-T5U[W5)0FE5J2<
M7O\ 9;X?=VNY$8S9NT5^ST.]6['<7,18W@HHG9%VW71['3_T)[Y!";P
M             5T_G)_U,>5GPMQ+ZL<'+#;G_P!M97J5>74@+>W^XLUUZ?(I
M<R#I7.                   LI_+(L*\<\OGA[;W$OI5(T)K^_4I([/$JC*
MK,SD[2D]E*)\!;=XI5K^WPJIZ^GJ5PWEN?";P9RJ.*_7'BST?T+#;N4?!Z%E
M*9^8IGNQC^EO0:-N@                   ( 'GU_U,=Q?!+4'U8XR3WN)_
M;5GKW/+E!F^_]Q7>I;\B'&\[!R0    -L>!'[]'"[^++CG]<&'&JU[\#SO\
M*7OX=3::'^-9/^:M?Q*5F\5I6,                       %7KRY_>NY._
MQ"[I^LC)2S>D_A66_E[?D0K=JOXGF?/W/+EKT;!@     [(>0I_4QT[\$MO_
M %8Y,<?OW_;5[KV_+AUNY']Q6NI<\B4_\@1.8     &%=E\;N/6YD.IVWHW4
M>RUNH4BLG.-=XGD\YONJI7?'GW>TRYT5Y*EUJE;;B%I57K2M*^DS<MJ6H9/T
M2_>M=6NJF.Y$X,/,:?D,WZ59M7.M13/LS#EUN_R"?+[VPS-DX=B69:'R&3WO
M(N>L<ON4FTUEUZ]BI.)YRK+;(S!IZ**CVY%NI6B?<J0JM55Z?);^:_E)B+U=
M%^W'%73&/C4]&<>><7-YW<?0LU$S9HKL7)XZ*IP\6KI1AS1@X5\H?9W>5VI6
M+GD>@LEQKDABT2K[Z+%#0W@>T&8:*K=K5..7RXR<;OE8L:G2M(=WK,DN4Z,P
MZJ4E!W&F>L+2LW,6\_35EKL\?MJ,>S$8QVZ<(XY<5J6X.J96)N9&JG,6XXO:
MU]R9PGM58SQ0X*Y;A^68#D5UQ#.<8R##<KL4I4*]8SE-GN%@O]IF(I2JHURM
M%UCQ9\)^E*TKVN-IKTK2OX*G=VKUJ_;B]8JIKM51C%5,Q,3V)C9+B+MJ[8N3
M:O4U47:9VQ5$Q,=F)VP\Z>CS       3^_)0YUN\PN+L?$L[O-;CO+0%+3A&
M<O3'U.W/*\6=BNIP'/Y"W$U7)E76W0'K?<'%..O.W*VO2'>VDIJE8%WTT.-(
MU3X6Q3AD<QC53R4U>ZH[4SC'%A,1'!*<]S];G5M-^"OSCG;&%-7+53[FKMQ&
M$\\3,\,.RAQSK0                   *LC??SZ;H^EG8WRPO!:'(>@V?-4
M>3"M.>]-O>=K\J6)S*8H             #,/'_&]2YCN77N*;TS2^:ZU3D>0
MQK-F&=X] @W.XXG"N"'(\6]KA7%;<5=LAW);-9SE:J6Q#JZ\A#JVTM+Q,_<S
M=G)W+N1HIN9JFG&FF9F(JF.+&./#@Y9PC9PLO(V\K>S=NUG:ZK>5JJPJJB(F
M:<>/;Q8\/)&,[>!.-T7Y$7ESZP9MM[N&%9/OF=5F/.@7O:N;2+O:'TOL-N(D
MQ\>PEC#\/N=NDH5WM)F1)J.Q=*]RJTHHA'/;\[Q9F9HIKIL4\$Q13A/=JZ54
M3V)A,V2W)T#+1%=5%5^KAB:ZL8[E/1IF.S$NN&"Z\P#5^/1,2UKA&(Z^Q:!2
MB86-X3CEGQ:Q1:)0ENGJ]IL<.#!:KV(I3K1NE:TI0Y._F+^:N3=S-==R[/#-
M4S5/=G&756,O8RUN+67HHMVHXJ8BF.Y&$/8GB]0
M           1$O:0^7J;KD>M^%V(W1MR'BU(6V=P-Q5T4I.1W*%)BZ[Q>8I-
M4K:<MV/3I-V?8512'47. Y3HIOT2UZN=(Z%NYK-Z-M>-NWV(GPZNW,13$_LU
M1QHK]8.J]*Y;T>U.RGP[G9GVD=J)FJ>S3R(KI**,P     )D'LX?$7\CM6[
MYA99:_#OVUY$G7.KG94;M>C:ZQBYI7EUZ@O*IU5'RO-H*(:J4Z53^3_6E:I=
M(?\ 6+JWPV:MZ1:GXNUX=?7JCP8][3./O^9+7J_TKX++7-6NQX=WP*.I$^%,
M=:K9[U)O(T2,          & >4^@<:Y2<>=MZ"ROPV[9LO#KC8XMP<0ISWBR
M%KP[EB>2M-I]+C^-91!AST(]*5JCT2JE4UK2N?I>?N:7J%K/VO;6JXG#EC@J
MCWU,S';8.IY&WJ60NY&[[6Y1,8\D\-,]JJ(GM*Q3-L.R/7>999@&86UZS99A
M&27O$LGM#]4J>ME_QVY2;1>(#JFU*;6N)<(;B*J36J5=O6E:T])9BS>MYBS1
MF+,]*U73%5,\L3&,3W%<;UFYE[U5B[&%VBJ:9CDF)PF.Z\R>CS    !UQ\E3
MEI3BSS<PJ'D%R]1UIO5#.G<ZJ^^AJ! EW^='7@F2R/&6W&9]Y,Q1&9>D.*32
M-;9LQ77TUI7D]\])^]-%KFW&.9L?&4\LX1X5/;IQPCCF(=3N?JGW9K-$7)PR
M]_XNKDC&?!GM58;>*)E8/$ )W                         !#>]IL^?7C
M']$V7?+!HF#U:>@YGSM/DHE]8WIN6\U5Y2,B26CD     "UBP'\Q,*^"6.?B
M>&5:S'R]?7GORLW8^0HZD=YZT\7J
M    5.!:M5\     "4W[,-^??+_X):<_'&PB+_69\AE.O<[U"2_5Q\OF^I;[
M]27H1(E4                          #_  XXVTVMUU:&FFD*<<<<51#;
M;:*54M:UJK1*$(33K6M?12@X=D<)P;9X%;SYG_+E[F?S%V;M*VW%^;KNQRD:
M[U$RNJJ,,:[Q%^5&M]QBM+]VS3+;L_-O:TJ]VARY517I1":4L9NSI,:-H]K*
MU1AF*HZ=SKU<,>]C"GM*^;R:K.KZM<S-,XY>F>A1U*>"??3C5VW/DW[1
M ]9@6$9+LS.,/UUAEM>O&79YD]BP_&;4PE:G;A?LCN<:T6J(FB$+53QYLM":
MUI2O;2O7^P\K]^WEK%>8O3A:MTS55/)$1C/L/6Q9N9F]1E[,8W:ZHIB.69G"
M%G%Q6X^XMQ7X\ZGT%B"&*VS6^(V^SS;@PUX/O_DK_?<LNRA]NM*53*R?*)LN
M>Y3T40J15-*432E*5HU34+NJ:A=S][VURN9PY(X*:?>TQ$=I8S3,A:TS(6LC
M:]K;HB,>6>&JKMSC/;; F SP          C&>TA\3Z99JW6G+[&+51R^:LFL
MZRV;)CM*5(?U[E5Q<DX;=)KG]Q,+%LXEO1$TI[I3F1=:]4H]S)?JYU7X+-7=
M(NSX%V.G1UZ8\*(YZJ<)]XCGU@Z7\+EK>JVX\.U/0KZM4^#/O:MGOT.,F!$H
M     $Q+V;SEI7*=<;*X>93<O$N^M)#^T-7-27U+>=P3);BS%S:R0VUN=C43
M&LRF1YU*)3W+7?G:_@1Z(A]8VD_!9FWJ]J/ NQT*^M$>#/;IB8]["6/5]JGP
MN7N:3=GP[?AT=69\*.U5,3[Z4GTC))                     #$V_/F*W3
M]$VQOD?>3+R'IUGSM'E0Q<]Z%>\U7Y,JLDM K2               >VUM#P&
MXY_AMOVI><@QS6\[([5$S?(,5ML:\9%8\:DRVF;K=[1:9;C,>YS+=%6IY+%5
M4J[V52GW5:'CF9S%.7KJRM--69BF>C%4X1,\43/%CRO;+Q8JOT4YJ:J<O-4=
M*:8QF(XYB./#D3DN.7D5>6WBUDQ;._>S*.2<2\VJUY)CV3Y[GBI^)7F!=8C,
M^W7>UV37[&(X[=K+/B2$N,-S4W!I;2Z555=>BB$=1WXWCNUUV,:<M-,S$TTT
MX51,;)B9KZ4Q,<>&"9]/W*W>M44W\*LQ$Q$Q-56-,Q.V)B*>C$Q/%CB['Z_U
MEKG4^.QL1U=@6&ZYQ:)TK&QW!L9LV*V5E73I5Q-LL<.#$\9?_>75%5JKZ:UK
M4X_,9G,9NY-W-7*[EV>.JJ:I[LS+K;&6R^5MQ:RU%%NU'%3$4QW(>X/![
M           *W;S6=;KU7YB/+/&:QJ1&KGMBZ[!BMHJNK*HNUH<#9S*V*KIT
MHW6F6].Q/N&E4JVGI1/2EC-ULS]:W>REW''"U%'B8T?Z5?-Y\O\ 5=?S5O#"
M)NS5X^%?^ISY-^T0    -A>)>WJZ#Y.Z"W,IY;$+7.V<'R:]50I::O8W"O\
M"_*B'52*T51$_'7)3"NG7W+E?17\!K]6RGU_3,QD_=7+55,=F8GHSVIPEGZ7
MF_J.I6,WQ6[M,SV,=O=C%:#,O-2&FI$=UM]A]M#S+S*TNM/-.IHMMUIQ%5(<
M;<0JE4JI6M*TKUH5EF)B<)X5D8F)C&.!_0_                  *Z?SD_Z
MF/*SX6XE]6.#EAMS_P"VLKU*O+J0%O;_ '%FNO3Y%+F0=*YP
M      %I+QLQ3\@^.N@\'\)#'Y&:5U9BG@-I90VS^3N#6*T>$A$9QZ.E#?J?
M2E&UK12E/<UK3I4K#J5WX?4;]_\ 7O5U=VJ964T^U\!D+%G]2S13W*8AFHPF
M8                   !  \^O\ J8[B^"6H/JQQDGO<3^VK/7N>7*#-]_[B
MN]2WY$.-YV#D@    ;8\"/WZ.%W\67'/ZX,.-5KWX'G?Y2]_#J;30_QK)_S5
MK^)2LWBM*Q@                       J]>7/[UW)W^(7=/UD9*6;TG\*R
MW\O;\B%;M5_$\SY^YY<M>C8,     '9#R%/ZF.G?@EM_ZL<F./W[_MJ]U[?E
MPZW<C^XK74N>1*?^0(G,         :7<QN O&KG%A[F/;KPB.O)8<%R)B>TL
M<;B6G96%KJIQQOWFR.L6169;$ONJ6NV3VY=L=6KO4QXE$.)W.CZ]J6B7OA,E
M7/P4SX5$[:*NS'+SQA//@U&K:'IVLVO@\Y1\9$>#7&RNGL3R<TXQS()7F!^7
M'NWR_MA-V7-V:Y=JW))DAO6^X;/ =C8]E3;37K*K3=8M7YB\7S&%'ZU?MK[J
M^]*%NQG9#":NTG+0-XLEK^7Z=CP,U3'AVYG;3SQP=*F>*8[$Q$[$*:[N_G-"
MO]"]X>6JGP+D1LJYIY*N6)[,3,;7/8Z!H0     .C_E2<MG^'G-#6.<W*Y.0
MM<9M,1JW;#57:-P_R+S*9$BIO<RBU40EO#<A:@WA2J4JY5F$XVGT.JI7G=ZM
M)C5]&NV*8QS-$=.WR]*GBCK1C3VXGB=!NQJDZ3J]N]5.&7KGH5]6KC][.%7:
M6.!798                    "K(WW\^FZ/I9V-\L+P6AR'H-GS5'DPK3GO
M3;WG:_*EB<RF*    "1OY$O WBAS+Q/D?<^26JOTCSL"R+6L'$W_ ,N=D8?[
MTQ<@MN92+NUX>!YAB[,[UMZU1Z]TE+RF_#Z(JFBE4K'>_.NZKH]W+4Z;=^#I
MN4US5X-%6.$TX>VIJPX9X$@;E:)I>KVLQ5J%KX2JBJB*?"KIPQBK'VM5./!'
M"Z\<G?(.X4YAH_/+/QKU934F\$VI5QUYEDC9FVLEM+E]MJZ2V<>O]MS3.<GM
M"++DJ&U0WI2(WK$*KJ9"*J\.K3G):9OYK5G.VZ]2N_"Y+'"NGH6XG">.)III
MG&.&(QPG@X\8ZK4MQ]'NY*NC3K7P6=PQHJZ=<QC'%,553&$\&.&,</,@W95B
MV1X/DV089E]EN..95BEYN6/9'8+M&<AW2RWNSRW8%SMD^*[2CC$N%,86VXFO
MX%)J3=:NV[]JF]9JBJU73$Q,<$Q.V)CLPAB[:N6;E5F[$TW:9F)B>&)C9,2^
M"?;X      F(^05YDM<[QV%P=W3?Z*S'#;4\]H#(;I(31[)<+MC-7IVM)$A]
M?B2+UAT5*G[33JJKMG0XQ2B*0&Z.Q#OYNY\!<G6\E3\37/QL1Q53P5]BK@J_
M:V^ZV2QN/O#\/;C1LY5\=1'Q4SQTQPT=FGAI_9V>YVR?B,DD
M                     QGN?;.'Z(U/L3<N?S:P<.UIB-[S"_/-]BI+L.S0
MG95(%O:6I%)-UNCZ$1HC-*]S\EYMM/I50R<GE+V>S=O)Y>,;UVN*8[,SPSS1
MPS/%#&SF:M9+*W,W?G"U;HFJ>UQ1SSP1SJQ7>^Y,NY";DV5NW.Y'CY5LW+[S
MEEU2EQ3C$#WRE*7!LT%2DI4FV6*VI9A14]*=D:.A/]A9C(Y.UI^3MY*Q\E:H
MBF.?#AF>>9VSSRKEG<W=S^;N9R_\K<KFJ>;'@B.:(V1S0Q,93%    !F#C_I
M7+>1FZ]8:-P9NBLGV?F-GQ2WR'&G'HUJ9GR*5NE_N#;5:.UM6.6AM^?+JGW2
M8T9RM/30Q,_G;6G9*[GK_P E:HFJ>?#@B.>9PB.>67D<G=U#.6\E9^4N5Q3'
M-CPS/-$8S/-"SLU+J_$=*:PP'4>!0/>W#=;XG8\.QV(JJ5O4MEAM[$!A^8\E
M*/6;C,\&KTEZM.Y^0XMQ7NE5J5GS>:O9W-7,W?G&]<KFJ>S,X]R."(XH6.RN
M6M9/+496Q&%FW1%,=B(P[O+RRR&8[W           !"$]H?XGJU)R@Q_D=C=
MMI'POD;9Z^_[D=-:,0MK87%A6R^T=;2I3<6F28TNVS6Z]$UDRT3E]*J2M59K
M]7VJ_6],JTZY/QV6G9ST58S'<G&.:.BAO?W2_JNI4ZA;CXG,1MZ].R>[&$\\
MXH]9(#@P    ?]2I2%)6A54J36BDJ36J5)4FO6BDUITK2M*T]%0+(+RM^62>
M8_##5>S;K<Z7+8>/0E:SVW5;M'9GZ1,*C0XEPNL^J4-MIE9C99$&^U2BG8VF
MZ413THK2E=-Z-*^Y]9NY:F,,O5/3M]2K@B.K.-/O5@MVM4^]M(M9FJ<;],="
MOKT\,SUHPJ[;H8<^WP                        0WO:;/GUXQ_1-EWRP:
M)@]6GH.9\[3Y*)?6-Z;EO-5>4C(DEHY      M8L!_,3"O@ECGXGAE6LQ\O7
MUY[\K-V/D*.I'>>M/%Z@                                   %3@6K
M5?      E-^S#?GWR_\ @EIS\<;"(O\ 69\AE.O<[U"2_5Q\OF^I;[]27H1(
ME4                          #C;YXG+NO&#A=D6*XY<JPMF\BW+AJ?$J
MQI*6+A;<:EP:.;*R>.E*T2:-V[&9-+<AYFM'(TZ\17*5IVG8;DZ1]YZS3=N1
MCELOA<JY)JQ\"GMU;<..*9AR6^>J_=ND56K<X9G,8T4\L1[N>U&SFFJ$ (GM
M!@     $CKV=3B,O9>_\LY5Y3:_&P_0<%['L'=DHHJ-<=LYA:WHKS[+:VW&9
M/Y'85,D/.45VK8EW2"\W7N1U3'?K#U;ZMD*-*M3\=?G&KFMTS_JJP[,4U0D#
M<'2OK.>KU.['Q5B,*>>NJ/\ 33CVYIE-5(83            #%V[=28IOK4.
MR=,9Q']9Q39N&W[#;SVH0M^+'O<!Z(U<X/?Z&KG9Y*T2XCE.BFI+*%TK2J:5
M,K)9N[D,W;SEB<+MJN*H[4\$\T\$\S&SF5M9[*7,G>^2N433/;CACGCACG5A
M6X]4Y;HS:^Q-.9Y$I"R_6>8W_"[^TWXE8SL^PW%^ J=;W7$-JDVJYMLIDQ'Z
M4[7XSK;B>J54J68R>:M9[*V\Y8G&S=HBJ.Q,8X3SQP3'%*N&;RMW)9JYE+\8
M7;=<TSV8G#&.:>&.6&-C)8X    -J^$?)B\\0>4>H-^VOUI^#A>41D9A:HG8
MIZ_:_O:%V7.;(RVZI+"IDW&9TGU13G5#,U++O3JW0U>M:;1J^EWLA5ATJZ?!
MGDKC;3/8BJ(QYL8;/1M1KTK4K6>IQZ-%7A1RTSLJCN3.'/A*S.L%^LV4V*RY
M/CMRB7G'\CM-NOUBO$!U+\&ZV:[PV;A;+E"?3[EZ).A2$.MKIZ%(52I6NY;K
MM5U6KD3%RF9B8GAB8V3$]B5BJ*Z+M$7+<Q-NJ(F)C@F)VQ/;A]8^'V
M             !B;?GS%;I^B;8WR/O)EY#TZSYVCRH8N>]"O>:K\F5626@5I
M      [I>1=PXXW\Q]K[UQKD?KG](UDPW7F.7W&X7Y7YYB'O;=9^2.0)<KUG
M!,HQ>7,\6)2B.Q]QUM/X:)HKTG#[\:QJ.CY2Q=TZY\'77<F)GHTU8Q$8^ZIJ
M]AVNY>D:?JV:OV]0M_"446XF/"JIPF9P]S,>RD&[E\A/R^\OU9G6-ZBU(YJ7
M9]TQ^8S@FQ$;,W/E+6+Y.UV2;5,GX]E.P[]9+M9WY+-(\UIR*MVL-YVK"FGZ
M-.HX#)[]Z_9S5%S-W?A<M%7A4="W3TJ>/"::(F)XXV\.&.,8P[K-[D:%=RU=
MO*VO@LS-/@U].Y5T9XL8JKF)CBG9P<&$[4&#:NKLYTIL?,]3[+L$O&,[P&_S
ML<R6RS$]'(MP@N=OB,.T_P .9;IS"D2(DENJF945UMYI2FUI56;\KFK&=RU&
M;RU456+E,33/-/>F."8X8G9*%\UEKV3S%>5S%,TWZ*IB8YX_1/#$\<;88_,A
MX      2J?($\R:MHN%OX([IOO\ Y5=I$N3QSR6ZRE]MNO#ZGIUUU)*DO*4V
MB)>7%.3+#W5;[)GCPDJ<5)A,HBW?W=SITSKN2I\*(^.ICCC@BYVN"KFPJXJI
M29N-O#T*HT3.5>#/R4SQ3QT=OAIY\8XXA+F(F2H               0D_:1]
M25Q+E[K+;,6/X5MV_IZ'"F/=BZ>M97K>]SK1='/%K_AJ\/%[U8T=M/=)[>M?
M0JA-/JYS?PND7<I/MK-['WM<8Q_FBI#GK"ROP6JV\U'M;MG_ #43,3[$TH[A
M(3@@     +'KRHN0:>2? KC_ )O+FJF9/C6*-:LS=3JZ.3*Y1K*M,4=G7!=%
M*369D5G@0[LKI6G5,]->B:]4TKKO5I_W;KN8L1&%JJOIT]6OPL([$S-/:6!W
M8S_WCH=B],XW::>A5UJ/!QGLQ$5=MT5.>;\                 (QO./R&M
MM\L.5>X>0N/;ZUSB=FV7>;-=(./7G&\FFW.V-VO$[!CKC4N5!<I%>6Z]9U.4
MJCT42NE*^FE22]$WZRFE:59T^Y8N5UVJ9B9B:<)QJF>/LHYUG<C-:IJ=W/V[
M]NBBY,3$3$S,84Q'Z&J'W9/>OVG-3?%',/\ --K^9>1^S7?&I:O\N<[]IM>+
M4?=D]Z_:<U-\4<P_S1^9>1^S7?&I/RYSOVFUXM1]V3WK]IS4WQ1S#_-'YEY'
M[-=\:D_+G._:;7BU'W9/>OVG-3?%',/\T?F7D?LUWQJ3\N<[]IM>+4?=D]Z_
M:<U-\4<P_P T?F7D?LUWQJ3\N<[]IM>+4?=D]Z_:<U-\4<P_S1^9>1^S7?&I
M/RYSOVFUXM1]V3WK]IS4WQ1S#_-'YEY'[-=\:D_+G._:;7BU'W9/>OVG-3?%
M',/\T?F7D?LUWQJ3\N<[]IM>+4?=D]Z_:<U-\4<P_P T?F7D?LUWQJ3\N<[]
MIM>+4?=D]Z_:<U-\4<P_S1^9>1^S7?&I/RYSOVFUXM2-]L#%:8+GF;80FZQ;
MZG#LNR3%:7R$Q(C0KS3'KS-M%+K$C2THE1XMQI#\9M#M*.(0NE%4I6E21LO=
M^'L47\)IZ=$583Q8Q$X=I'U^U\!?KLXQ5T*YIQY<)PQ[;R1ZO(    &2=,X.
MYL[<&J-:M-U>=V%LK!<'::2EY:G7,LRBUV!#:41W6)"JK5<*4I1"T+KU]RJE
M>E3&SE_ZMD[N9G@MVZJO%IF?T,C)V?K.;M9>.&Y<II\:8C]*U%2E*$I0A-$I
M32B4I32B4I2FG2B4TITI2E*4]%"KJS#_ *                    " !Y]?
M]3'<7P2U!]6.,D][B?VU9Z]SRY09OO\ W%=ZEOR(<;SL')     VQX$?OT<+
MOXLN.?UP8<:K7OP/._RE[^'4VFA_C63_ )JU_$I6;Q6E8P
M         5>O+G]Z[D[_ !"[I^LC)2S>D_A66_E[?D0K=JOXGF?/W/+EKT;!
M@     [(>0I_4QT[\$MO_5CDQQ^_?]M7NO;\N'6[D?W%:ZESR)3_ ,@1.8
M        88Y!:"UCR=U'F.D]OX^SD6$9I;JQ)C%:T9N%KGLJH_:<AL4ZB5.6
MV_V*>A$B*^GKVN(Z*HMM2T*S-/S^9TS-T9W*5=&_1.SDF..)CCB8V3##S^1R
MVI96O)YNGI6:X[<3Q3$\4Q.V)5QO-WB%G_"'D+F&BL[K6X-6VK=[P?+6XRHL
M'.L NKTE..Y3"94IRC#C](KL::Q1;E(EQBR&*+<HW1Q5B=$U>QK>GT9ZQLF=
ME5/'37'#3/?B>.)B>-7_ %G2K^C9^O)7]L1MIJXJJ9X*OT3'%,3#4DVS5@
M   6/GE2<B7N3? [0N?7:;Z[E]@QM6L,[=<?]8F.93K5]6*KN=R=[44K<,GL
ML&%>'*4IT3[XTH5UWJT^-,UV_EZ(PLU5=.GJU^%A'-3,S3VE@=V-0G4M$L7Z
MIQNTT]"KK4>#C//,1%7;=$SGF_                  !5D;[^?3='TL[&^6
M%X+0Y#T&SYJCR85ISWIM[SM?E2Q.93%    !+T]F&_,3E_\ "W3GXGV$1)ZS
M/E\IU+G?H2KZN/D,WU[?>J2FR+TEHJWM GES>_%OD<[M/V1'OG:(\"V\BK%;
MF/\ %N-H93$M6/;38CM(I5R196D-V^]5IW*5#]6D]$HC2G%2EN#O%T*HT+.5
M>#,S-F9XIX9H[?#3SXQQQ",M^MW^G3]]Y2GPHPB[$<<<$5]K@JYL)XI1&264
M6      >DP[,,HU]EF-YUA-\N.,YAA]\MF2XQD-I?5&N=EOMFF,S[9<X+Z>O
MAR(<MA"T]:5I6M.E:5IUH>=ZS:S%JJQ?IBJS73,51/!,3LF)>EF[=L7:;]FJ
M:;M%43$QPQ,;8F%BIY9?/C%N?/'BUYOWVVT[?PND'&-UX7#7V4M&54C*K&R2
MTPW5*DHQ'-F(ZYEO56KB6'$R(=7778;JZUZWET&[H.H38VSE*\:K=7+3R3^U
M3P3R[)PB)A/N[FN6M<R$7MD9NC"+E/)5RQ^S5PQR;8QF8ET7.=;\
M                       (N_M('+W\G,#UWPSQ*Y+;N^P'H6T]L>JO]M6L
M)L5PE1<&QF8A"E)=9R'+8+US=0JB'&JV2*JG5#]23O5UI'PE^YK-V/ M^!;Z
MTQX54=BF8I]]/(C;U@ZK\'8MZ1:GPKGAU]6)\&.W5&/O8Y4/@EU%      &;
M>/O(S<7%G8\3;>B<JBX5L2WVJZV6!DDC%,,R]V!;[VPF+=$PK?G./9+:8DJ7
M$I5FLAN.F0EEQQM*Z(<<2K"U#3LGJF6G*9ZB:\O,Q,QTJJ<9C@QFF8GM8X=Q
MF9#4,WIF8C-9*J*,Q$3$3T::L(GAV51,=O#%OM_/(\TG[4'_ "4X[_LD-#_1
M&Z_V7_<N_2-Y_6>\OVG_ &[7[A_/(\TG[4'_ "4X[_LD']$;K_9?]R[](?UG
MO+]I_P!NU^X?SR/-)^U!_P E.._[)!_1&Z_V7_<N_2']9[R_:?\ ;M?N'\\C
MS2?M0?\ )3CO^R0?T1NO]E_W+OTA_6>\OVG_ &[7[A_/(\TG[4'_ "4X[_LD
M']$;K_9?]R[](?UGO+]I_P!NU^X?SR/-)^U!_P E.._[)!_1&Z_V7_<N_2']
M9[R_:?\ ;M?N'\\CS2?M0?\ )3CO^R0?T1NO]E_W+OTA_6>\OVG_ &[7[A_/
M(\TG[4'_ "4X[_LD']$;K_9?]R[](?UGO+]I_P!NU^X?SR/-)^U!_P E.._[
M)!_1&Z_V7_<N_2']9[R_:?\ ;M?N'\\CS2?M0?\ )3CO^R0?T1NO]E_W+OTA
M_6>\OVG_ &[7[A_/(\TG[4'_ "4X[_LD']$;K_9?]R[](?UGO+]I_P!NU^X?
MSR/-)^U!_P E.._[)!_1&Z_V7_<N_2']9[R_:?\ ;M?N, \C_,EYH<N,"B:R
MY#[@B[%PFWY' RV!:']7Z>QQZ#D=LAW*W0[K"O.'Z_QZ^Q7VX%XE,JHW)2AQ
MI]:5I4FO0V&G;N:-I-^<SI]F;=Z:9IF>G<G&)F)PPJKF.&(G@XF#J&\.KZK8
MC+9^[%RS%451'0MQA,8QCC33$\$SQ\;1HW;2@     2!_9Z>6E=.<I;QQWR:
MY>!@W)*UMP[*F2^M$6V[8Q*/-N.,NM>(OU>/^4]D<GVQ=$IHY*FJ@([NC=$U
MX'U@:3]<TN-0M1\?EIQGGMU815XLX3S1TG=;AZI]4U.<A<GXG,1LYJZ=L=V,
M8YYZ*<00DF8                        (;WM-GSZ\8_HFR[Y8-$P>K3T'
M,^=I\E$OK&]-RWFJO*1D22T<@     6L6 _F)A7P2QS\3PRK68^7KZ\]^5F[
M'R%'4CO/6GB]0                                   "IP+5JO@
M 2F_9AOS[Y?_  2TY^.-A$7^LSY#*=>YWJ$E^KCY?-]2WWZDO0B1*H
M                    %>MYS_+JG*_FOFM,>NB+AK#2*']/Z]5$DN/VRXUQ
M^XREYGE4;I7U5]>0Y:[)0U*:IVR;9#A>Z4E":E@-S=)^ZM%H^$C#,W_C*^6,
M8\&GM4X;.*J:D#[WZK]Z:Q7\'..6L_%T\DX3X57;JQV\<1#DR=6Y<     #?
M3CYYG'-[BMKF-J;06YHFOL BW:ZWY%DC:ITO?GG[S>G4.W*Y3[YE6N[[D%SE
MOT9;;2N3+=JTPTVRWVM-MH3HM0W9T35,Q.;S]F;F8F(C'IW(V1P1$4UQ$=J.
M'&>&6[R&\>LZ9EXRN1O1;L1,SAT+<[9X9F:J)F>W/!LX&;_YY'FD_:@_Y*<=
M_P!DA@_T1NO]E_W+OTC-_K/>7[3_ +=K]P_GD>:3]J#_ )*<=_V2#^B-U_LO
M^Y=^D/ZSWE^T_P"W:_</YY'FD_:@_P"2G'?]D@_HC=?[+_N7?I#^L]Y?M/\
MMVOW#^>1YI/VH/\ DIQW_9(/Z(W7^R_[EWZ0_K/>7[3_ +=K]P_GD>:3]J#_
M )*<=_V2#^B-U_LO^Y=^D/ZSWE^T_P"W:_</YY'FD_:@_P"2G'?]D@_HC=?[
M+_N7?I#^L]Y?M/\ MVOW#^>1YI/VH/\ DIQW_9(/Z(W7^R_[EWZ0_K/>7[3_
M +=K]P_GD>:3]J#_ )*<=_V2#^B-U_LO^Y=^D/ZSWE^T_P"W:_</YY'FD_:@
M_P"2G'?]D@_HC=?[+_N7?I#^L]Y?M/\ MVOW#^>1YI/VH/\ DIQW_9(/Z(W7
M^R_[EWZ0_K/>7[3_ +=K]P_GD>:3]J#_ )*<=_V2#^B-U_LO^Y=^D/ZSWE^T
M_P"W:_</YY'FD_:@_P"2G'?]D@_HC=?[+_N7?I#^L]Y?M/\ MVOW'/K>N^-I
M\E=F7W<6Z<BB9=LC)V;4SD&21<6Q'$5W:EEMD2RVUZ9:\)L..65V7'M4!EBK
M_JWC.-M(HM2NVAT&1R.5TW+4Y/)4S1EJ<<(Z556&,XSMJF9X9F<,6ASN>S.H
MYFK-YRJ*\Q5AC/1IIQPC"-E,1'!&&.#$)EL4     "=/[/YRV5O3B3(T=E%V
MK-V!QEGP\6C)EOU<FS]47ZDN9KV4GO2WWL8\J'-LB6V^^D:);HG?6E74=8/W
M^TGZCJWUZU&&7S,=+FBY'M^[LJYYF>1-.XNJ?7=+^I7)QOY:>CV:)]KW-M/-
M$1RN]!PCMP                   ,3;\^8K=/T3;&^1]Y,O(>G6?.T>5#%S
MWH5[S5?DRJR2T"M(     $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^FYG
MS5/E)D)#Z6D;_P ^[RY4[GUY(YD:BL/B[6U/8/#VS:+7'K65GNK+2FKGY158
M:IVRLAUM%JX\X[6E'7['1Q"EK]2B-$B[B;Q?4\Q]SYNK_BW:OBYGW-<\78K]
MBK#]:91]OQN_]<L?>V5I_P"5:I\.(]U1''V:/9I[$0A8$S(@      _9;KC<
M+/<(%WM$^;:[K:YL6XVRYVZ4_!N%NN$%]$F%/@38RVI,.;#DM)<:=;4E;:TT
M4FM*TI4_*J::Z9HKB)HF,)B=L3$\,3#]IJJHJBNB9BJ)QB8V3$QQPL&O*,\Q
M.V\[-"MV_,9\2/R'U-$MMCVI:NZ/'=R>(INL>R;-M$-NC::V[)$L51.0TBB8
M5T0XCM0R[%JY &]N[U6AY_I68F=/NS,T3^KRT3SQQ<M.''$X3MNKK].MY'HW
M9CZ_:B(KCEY*XYIX^2K'BF'6DY1U(             "/O[1EHU>P>&6*;BM\
M3QKKH'9UJG7*3VT5ZM@^R4LX9>DIZ)[Z+>S!6.UK7KVT0VKK2OHJGO\ U=Y[
MZOK->3JGP,Q:F(ZU'A1_EZ;A=_\ )?#Z13FZ8\*Q<B9ZM?@S_FZ*#P38AD
M   "3Y[-ERA;QG9FV^)60W%#-NV9;J;5US'D2*-MUS?$H35NS6UP&*UZR;CD
M&%MQIBNGI1'QY=?P?@C/UCZ9\+EK6K6X\*U/0KZM4XTS/-%6,=FM)'J]U+X/
M,7=+N3X-R.G1UJ8PJCLS3A/8I3$R($L
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
MORLW8^0HZD=YZT\7J                                    5.!:M5\
M     "4W[,-^??+_ ."6G/QQL(B_UF?(93KW.]0DOU<?+YOJ6^_4EZ$2)5
M                       !S0\VCEZWPZX8[$R^RW5%NVAL%JNK-2H;52LU
MK*\JB2FY^11D471;7Y'8PQ-N2'E)6RF8Q&:73_&32O2;J:1]\:S;LUQCE;?A
MW.3HT\$>^JPC#DF9XG.[T:K&DZ1<NT3AF;G@4<O2JX9][&,]G".-7/EAT @
M                            #I3Y37+2O$#FIK/-+S<O>_6^>2/T4[5J
M\^MF"QB.92X<>/?YE>^C2&L/R5B#='%J2M7JT5Y":4JYU.;WKTG[WT:[9HC'
M,V_#HY>E3Q1UHQI[,QR.AW7U3[JUBW>KG#+UST*^3HU<?O9PJ[$2L9BO"?P
M                  ,3;\^8K=/T3;&^1]Y,O(>G6?.T>5#%SWH5[S5?DRJR
M2T"M(     $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^FYGS5/E)D)#Z6G
M^'&VW6UM.H0ZTZA3;C;B:+;<;72J5H6A5*I6A::]*TKZ*T'!MCA.'9/ @+>=
M!Y=2N%V]*;%UO9UL<=-VW.X7+#FHK3JXFO<R[/7\AUQ(>[:M,0>JG)UCHJJ5
M+MU5QZ=ZH+KJYYW-WA^^<C]7S,_^QL1$5?MT\$5]GBJY]ONHA!V]^@?<^=^L
M9>/_ %]Z9FG]FKAFCL<=/-L]S,N+AV3D      -E^(?*78O#??F#[XUK)K6Y
MXS-]6R"P.OK9M>:X9<'&49+AMZ[4N4K O4-JG8Y5"U1);;,ENGC,-UIK=7TO
M+ZQD*\AF8\&J-D\=-4<%4<\3W8QB=DMCI6IYC2,]1GLO[:F=L<55,\-,\T^Q
M.$\,+(SCIR UQRBTS@F\M57=%VP_.[,S<8Z%*;]\;)<V^L>]XQ?6&U+I#O\
MC=U;=ARVNJDT>:JI"EMJ0M5<]1R&9TS.7,CFHPO6ZL.:8XJHYIC;'^*P>GY[
M+ZEDZ,[E9QM5QCSQ/'$\\3LEFPPF8            !@WDSI>V<BN/>YM&W53
M34?:.NLIQ"-,>312+7>+G:I"+!>TT4VZGQK'?4QIC=:I5T<8I7I7\!G:;G:M
M.U"SGJ.&U<IJ[,1.V.W&,=MA:CDZ<_D+V2JX+MNJGL3,;)[4X3VE7M?;)=L9
MO=YQN_07[7?<?NMPLEZMDJB4R;==K3+>@7&#(2E2DT?B3(ZVUTI6M.Y-?26;
MMUT7:(N6YQHJB)B>6)VQ*MU=%5NN;=<85TS,3'),;)A\L^GR    #+N@MSY;
MQVW3K+>&#/5:RC6.8V;++<UX[D=BYMVZ2FMRL,YUI*G/>K(K4M^!+32E>^+)
M<3TKU,3/Y.UJ&2NY*_\ )7:)IGFQX)CGB<)CGAE9'.7<AG+>=L_*6ZXJCGPX
M8GFF,8GFE9R:7VWAN^M3:\W-KZ=[X8;LO$[-EUA?55OUEF+=XC<ARW7!MM:T
MQKM:)-7(DQBM>YB4RXVKW2:T*T9W*7LAF[F3S$87K=<TSVN..:>&)XXG%8W)
MYJSGLK;S=B<;-RB*H[?%//'!/)+)QC,D                           !
MQA\^?>K.GO+XSG&(TOU?(][Y/B^I;,EISI(3;I$U679?(JS3W2X+N*XK)@.K
M_NH7<&Z5KU4FE>RW$R,YS>"B[,8V[%-5R>SAT:>WTJHGM.0WWSL930J[<3\9
M?JBB.Q[:K_+3,=N$ XGE!P     $D#V:G52LCY1;MV[(BTD0-7Z<C8S&>4W5
M28.1[/R>&NW24.=M:-ON8_@MW9I3K2JD.K]%>E>D=>LC-?!Z78RD3X5V]TNS
M%%,X^S52D'U>9;X34KV:F/!MV<.Q-<[/8IJ33R&4O@
M  ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_\ <5WJ6_(AQO.P<D    #;
M'@1^_1PN_BRXY_7!AQJM>_ \[_*7OX=3::'^-9/^:M?Q*5F\5I6,
M               %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0K=JOXGF?/W/+
MEKT;!@     [(>0I_4QT[\$MO_5CDQQ^_?\ ;5[KV_+AUNY']Q6NI<\B4_\
M($3F           #\LZ%#N4*9;KA&8FP+A%D0IT.4TAZ-+ARFEL28TAERBD.
ML/LN*0M*J5HI-:TJ?M-4TU153.%43C#\JIBJ)IJC&F8PE6#<O-(N\;N3^]]&
MJ;?;AZWV;E-@L"Y*E+D2\1I<79N&7%Y2U+75RZ8G+A2:]5*KU=]-:_A+,Z1G
M8U'3+&>]U<M4S/6PPJCM58PKAJN3G3]2OY+BMW*HCJXXTSVZ<):YFQ:\
M'<GV>G/U8AYB%JQKUE++>U=/[,PBL=:VJ4ENVJ-:MEMH;0[6BE/M-Z_6NE6Z
M5<HW1?\ W*K.(]8%CX;=Z;F'R5ZBKNXT?ZW9[AW_ (+7XMX[+MJNGN85_P"E
M/&(+3:                  "K(WW\^FZ/I9V-\L+P6AR'H-GS5'DPK3GO3;
MWG:_*EB<RF*    "7I[,-^8G+_X6Z<_$^PB)/69\OE.I<[]"5?5Q\AF^O;[U
M24V1>DL T_YS</,"YP\>,PTAFE&;?<IC-;WKW,?5TOS,%V#;6'_R?R*.GIXC
MT&KCRHMQCIJA4NVR'VDK;6I#J-OH>KW]$U"C.V=M,;*Z?UJ)X8[/'$\4Q$\S
M4ZUI-C6<A7D[VRJ=M%7ZM4<$]CBF..)F.=6[;>U/G>BMG9OJ#9MC?QW.]>Y!
M-QO)+2_U4EJ;#52K<J&_VI1-M5SB.-RH<E'5J5$>;>;K5"TUK8S*9NQGLM1F
M\M5TK%RF)B>:>],<$QQ3C"ON;RM_)9FO*9FGHW[=4Q,?]<4\,3QQM8Y,AC@
M    2'_(E\R5/'O9#'%#<>0)BZ4VU?:5P*^W631%OUIM"YJ0PQ'??=]$'%,^
M?HW&D5K6C$.YU9D*\-IV8]2/M^=W/O#+?>N3IQSMJGPHCAKHCOU4\,<<TXQM
MF(AWNY6\/U#,?=>;JPR=VKP9G@HKGO4U<$\DX3P3,IN!"J8P
M                ".U[1!R]3J?CGCO%_%+HVSF_(::F=E[3"Z5F6S4.*3F9
M4RB^RM'8=<QRQB+$:7U[9$.%<&:TK2M>DA>KW2/K6HU:G=CXC+QA3R3<JC_3
M3C/-,TRX'?W5?JNGTZ;:GX[,3C5S6Z9_U581SQ%4(2I-*'0
M                  E.>S<\ME6G*MG<-<LNU:6_+&).V=2,2WZU0UDEHBQX
M6PL<MZ5(6M3EXQZ/%NK;*5(::3:ICG2JWE5K%_K&TGIVK6L6H\*CXNYV)VT3
M/8G&GWT1Q)+]7VJ]&[<TB[/@U>'1V8]O$=F,*NU/*EYD2)5
M          $-[VFSY]>,?T39=\L&B8/5IZ#F?.T^2B7UC>FY;S57E(R)):.0
M     +6+ ?S$PKX)8Y^)X95K,?+U]>>_*S=CY"CJ1WGK3Q>H
M                       !4X%JU7P     )3?LPWY]\O\ X):<_'&PB+_6
M9\AE.O<[U"2_5Q\OF^I;[]27H1(E4                         $#SS[N
M7JN0G+^3J#&;HY*UMQD8GX&PTTNOJ-QV?,?9>V9>$II6E5N6R9$BV/W=.B7+
M2ZMNO8]6JITW$TC[OTB,W=C#,YG"KGBCW$=N,:O?1CP(3WXU7Z_JLY2W..7R
MV-/--?NY[6RGWL\KAF=NXL                               +#KR<.6
MW_5EPEP"=?;E2;LS3Z4:?V/1UUI4V7,Q:#%3BV2OHHKQW$Y-A[L)UY]:$I=N
M+<Q*>[PZU*^[X:3]U:U<IMQAEKWQE')A5/A1[VK'9R8<J>MTM4^]-&MU5SCF
M+7Q=?O8\&>W3AMY<754Y9TP                  ,3;\^8K=/T3;&^1]Y,O
M(>G6?.T>5#%SWH5[S5?DRJR2T"M(     $F[V9/Y]>3GT38C\L'2-/67Z#EO
M.U>2D;U<^FYGS5/E)D)#Z6@#7SE+QLUWRWT7GFAMG0_%QW-;9X46Z,,M.W7%
M<BA+I+Q[+;$MSM\&[6"YMH>13N2E]NBV'>YEUQ"MAI>I9C2<];S^6GXRB>#B
MJB>&F>:8[G#&V(8&IZ?E]5R5>1S,?%UQP\=,\54<\3W>#@E6S\EN/&Q.*N[L
M_P!#[1@(AY9@5Y<@.2XU':VK(;1(0B98<IL3SR&W)%CR2SOLRXRE)2ZA#OAN
MH;>0XVFQNFZAE]4R5O/96<;5RG'GB>.F>>)V3[&Q7O4<AF-,SES)9F,+M$X<
MTQQ51S3&V/9VL%F<P@     .W'DL>9 ]PVW/^B/9][JSQOW5>H,6_OSI*DP-
M99\^EBV6?8S/BJK'B6>8TAJ#?ZT\/K"0Q*4NOJ"6G.*WSW<C6,G];RU/_L;-
M,X8<-=/#-'9XZ>?&/=8QV.Y^\$Z1G/JN9J_]?>G;CP45<$5]B>"KFPGW*>HV
MXVZVAUI:'6G4)<;<;51;;C:Z44A:%IK5*T+37K2M/16A!/!LGA3?P[8X'^P
M            0#_/<XRN:"YV9=FEJ@5C81R,@(V_9'VT?[.C*YSU;=LNW*=]
M'B3UY;'7=G:=.B6KPS3K6O4GG<;4XS^AT6:I^/R\_!SU8VT3V.CX/O90=OMI
MWU'6Z[U,86<Q'PD=:=E<=GI>%[Z'& [)R      $J[V=3G.S:Y^0\&-AWCPX
M]ZD7?/\ 0DF=)I1MN[497/S_ %Y%\5RO9[XQV%WV RVE*/%:N:E5JX\VFL6^
ML/0YJIIUS+QMIB*+N')P45]KVL^]Y)2;N#K44U5:+F)V3C5:QY>&JCM^VCWW
M+"7"1,E,                           !"#]HGY/(VIRKQ7C[89OCXQQQ
MQA3=[2R[6K$C9FQ(]JOM^HKPG*L2467%XEGC([J>)'E*F-^CN52LU^KW3/JN
ME5:A<CXW,U;.I1C$=VKI3SQ@AO?[4OK6ITY"B?B\O3MZ]>$SW(Z,<TXH]A(#
M@P     )PWLY&G%8/PMR_:\V-5NX;OVU>YEOD]M4IDX?KR(QAUK32M?[]6,M
M:OU*JI7I[JE.G6E>L)^L3.?#ZS1E:?:V+48]:OPI_P O13+ZO\I\#H]>:GVU
MZ[.'5H\&/\W22"3@'=@                    ( 'GU_P!3'<7P2U!]6.,D
M][B?VU9Z]SRY09OO_<5WJ6_(AQO.P<D    #;'@1^_1PN_BRXY_7!AQJM>_
M\[_*7OX=3::'^-9/^:M?Q*5F\5I6,                       %7KRY_>N
MY._Q"[I^LC)2S>D_A66_E[?D0K=JOXGF?/W/+EKT;!@     [(>0I_4QT[\$
MMO\ U8Y,<?OW_;5[KV_+AUNY']Q6NI<\B4_\@1.8            $"CV@K!V
M,2\QG*;XRS5I6S-5:NSB17LJA+S\.TR]=U>1U9:2NE6\!2FM:5<I5::]5=>J
M4SMN!?F[N[11/_:NUT^ST_\ 4A#?NS%K>"JN/^Y:HJ]CH?Z7$<[5QP    .F
M/DY7S\G_ #+N*,_QWH_K&99+8_$83W+5^4VN<SQOP%4_L9E>^WA.5_L;76O]
MAS6^%'PF[>:IX? B?%KIG]#HMTJ_@]XLK5^W,=VBJ/TK%XKRGX
M        %61OOY]-T?2SL;Y87@M#D/0;/FJ/)A6G/>FWO.U^5+$YE,4    $
MO3V8;\Q.7_PMTY^)]A$2>LSY?*=2YWZ$J^KCY#-]>WWJDILB])8  CK^?+Y<
MGZ>]:.\M]1V.CNX=.X^[38UGMD=M,K8>J+6AZ9)N56VT47/RC7;7B2&:]?%D
MVFK[/5Q<>$S20MQ=XOJ&9^Z<W5_P[U7@3/N*YXN:FO@YJL)XZI<#OON_]>R_
MWKE:?^7:I\.(]U1''SU4<//3C'%$(3!-*'0      $ZKR0?,EIRNU/3C]MR_
MUD\AM,V*,F-<[G(4[<-IZSA*CVZWY2J2\XMZ?E&,..L0;S5?5R11R-,JIQ;\
MGP8.WVW<^ZLW]X92G#3[U7!'!17.V:>:FK;-/)MC9A&,T[F[P_>F5^H9JK_G
MV:>&>&NB-D5<]4<%7+LGCG#O*<*[<                          #\LZ;
M#ML*9<;A)8A0+?%D39TR4ZAF-$AQ6EOR9,AYRJ4-,,,MJ6M2JTHE-*UJ?M-,
MU5133&-4SA#\JJBF)JJG"F(QE6M^8QRPG<SN7.U-THERWL-<N?Y(:KA2J+;]
MZ]8XHX_!QA"(KGNX3U[JI^[RV:UKV3[D_P!*].A8_=W2J=&TFUDL(^&PZ5<\
MM=6VKLX;*8GDB%>=?U2K5]5NYS&?@<>C1S44[*>[[:>>9:/&[:8
M                      ,O:!W1EG'7=>L-Y8.YVY/J_,K+EMOCJ?>C1KJU
M;I257/'[@ZQ_C4M.26E;\"8E/I7%DN)_M,3/Y*UJ.2NY&_\ )7:)IGFQX)CG
MB<)CGAE9'.7=/SEO.V?E+=<51SX<,3S3&,3S2L\=4;,Q3<^LL VW@L[WQP_9
M.(8_FN.2E=E'E6K([9&ND5F8TA;E(MQB(D^%)8K7O8D(6VKHI-:4K/FLM=R>
M9N92_&%ZW7-,]F)P[G)/'"Q^5S-K.9:WFK$XV;E$51V)C'N\L<4L@&.]P
M                  "&][39\^O&/Z)LN^6#1,'JT]!S/G:?)1+ZQO3<MYJK
MRD9$DM'(     %K%@/YB85\$L<_$\,JUF/EZ^O/?E9NQ\A1U([SUIXO4
M                                J<"U:KX     $IOV8;\^^7_P2TY^
M.-A$7^LSY#*=>YWJ$E^KCY?-]2WWZDO0B1*H
M:4^89RJ@\->)&VMW5=CURJWV;\F=:6]]3/6Z;*RRJK1B;:8[U:)FQ[/)>7=9
MC*?=JMUOD53Z:&ZW?TNK6-6M9+_M35TJYY**=M78Q]K'/,-/KVITZ1I5W.?]
MV(PHCEKJV4]SVT\T2K4KC<9]XN$^[76;*N5TNDV5<;E<9K[DF;/GS7UR9DV7
M)>4MV1*E2'5+<6JM5+6JM:UK6I9"FFFBF**(B*8C"(C@B(XE>*JJJZIKJF9J
MF<9F>.9?C/U^                               !V^\A?ELKCSS+MVK<
MCNU86M^3<6%K>XLR'ZMV^'LB/(>DZKO"FZ)4IR;,O$J186J4[4];[WKKT;I6
MG%;]Z3]X:-.:MQCF<M,UQR]#W<=C#"KWKLMR-4^H:O&6N3AE\S'0GDZ?N)[N
M-/OD]$@E-P                  ,3;\^8K=/T3;&^1]Y,O(>G6?.T>5#%SW
MH5[S5?DRJR2T"M(     $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^FYGS
M5/E)D)#Z6@ !Q!\[#RYD\PM)?I?U?8Z2>1>D+/.FV6-":IZ]LC7C*GKGD& +
M2TTJ1.O4!7B7"PI]W6LNK\1":5G5<;[;<O>+[HSOU3-58:=?F,<>"BO@BOFB
M>"KFPGW+C=\=W_O;)_6\M3CJ%F)P_;HX9IYYCAIY\8]T@7J2I"E(6FJ5)K5*
MDJI5*DJ37I5*J5Z5I6E:>FA.J$7_        $SWR%/,EKMW"8?##<]_H[L[6
MUEZZ8OUSD)3(SC6MGC)37#'77G.Z7DNO8;7^S=ONY-C2GW'=!>==AO?O=SZI
M>G6<G3_QKE7QD1[FN?==BOCY*NM$1+NY&\/UNS&D9RK_ )-N/BYGW5$>Y[-/
M%RT]69F2D1PD,            #BUYZW$ISDIPMO.<8U;')^R>-LR7M/'D16?
M&FW'#/5&X>T;"WZ:U2PK'&&[S6B$J==?L;+2?_$KU[/<;5ONW68L7)PRV9CH
M3R15[B>[X/8JF7(;ZZ7.HZ/-ZW&.8R\]..6:?=QW/"[-,0@*D\(.      ]-
MA69Y1KK,,7S[";U.QS,,,O\ :<GQB_6UY3$^T7VR36;C;+A%=3_=>BRXZ%TZ
M]:5Z=*TK2M:'G>LVLQ9JL7Z8JLUTS35$\$Q,83#TLWKN7NTW[,S3=HJB8F.&
M)C;$K';RZ.<.(<\N.6.[3M?J=JV!9:1\7W!A<=SW>+9W$C(K+>B,K<=>_)K)
MFD^OVIQ2EU]6=JRM=7V'TIKKO%HE[0M1JRM6,Y>KPK=7ZU/^,<%7/MX)A8'0
M-9M:WI].9IPB_&RY3^K5_A/#3S;.&);YFB;L
M &N/+;DAB/$KCOM'?N9.1UPL#QN7+LUH?D)CNY1ETRE(.(XI#56M'*R,@O\
M(8CU4BBJLM*6\JG8VJM-CI.G7=6U"UD+/MKE6V?U:>&JKM1C/L-?JNH6M+R%
MW/7N"BG9'ZU7!33VYPCV597G^<Y-L[.LRV1FEQ<O&7Y[E%^S')[H[U[[A?\
M)+I*O%VEU352NRC\Z8M5$TKT32M*4]%"RN7L6\M8HRUF,+-NF*:8Y(B,(]A7
M2_>N9F_7F+TXW:ZIJF>69G&7DCU>0    /[Q8LF=)CPH4=^7,EOLQ8D2*RY(
MDRI,AQ+3$>.PTE;KS[SJZ)0A-*J4JM*4I6M3\F8IB:JIPB'[$35.$;9E9Y<-
MM'M\;>*^@]'59:9N&N]8XQ9\C\"J:L2,SD0477.)S/:I=*-7',;A.D)IW*Z4
M=I3N5^&M9]8SWWEJE_/>YN7:ICJXX4QVJ8B%CM(R7W?IEC)>ZMVXB>MAC5/;
MJF9;+&M;$                    !  \^O^ICN+X):@^K'&2>]Q/[:L]>YY
M<H,WW_N*[U+?D0XWG8.2    !MCP(_?HX7?Q9<<_K@PXU6O?@>=_E+W\.IM-
M#_&LG_-6OXE*S>*TK&                       "KUY<_O7<G?XA=T_61D
MI9O2?PK+?R]OR(5NU7\3S/G[GERUZ-@P     =D/(4_J8Z=^"6W_ *L<F./W
M[_MJ]U[?EPZW<C^XK74N>1*?^0(G,            "$+[2I^_1JC^$W!?K@W
ML37ZM_P.[_-U?P[2&_6'^-6OY6G^)<1ZB0'!@    Z%>5!_48XC?2S;OQ7=3
MG]ZO[=S?FI[\-]NO_<&5\['>E9"E=%@@                  59&^_GTW1]
M+.QOEA>"T.0]!L^:H\F%:<]Z;>\[7Y4L3F4Q0    2]/9AOS$Y?_  MTY^)]
MA$2>LSY?*=2YWZ$J^KCY#-]>WWJDILB])8  _P"*2E:5(6FBDJI5*DJI125)
M53I5*J5ZTK2M*^F@$"GSK/+F5PYW=3;&K[!6)QSW;=9\ZPL6^+5%KUOG[M7K
MC?==J2RGU>W6>6SW3[$BOAIK#H_%:16D!2U3MN9O%]\9+ZIFJL=1L1$3CPUT
M<$5\\\57/A,^V0AOAN_]TYSZUEJ<-/O3,QAP45<,T<T<=/-C'N7$<[5QP
M  &5M';JV'QUVS@VZM4WM>/Y[KV^,7RQ3^U3L5VJ6W8MPM-TBI<:]?L=]MDA
MZ%.C54E,B)(<;K6E%=3%SV2R^HY2O)9JGI6+E.$QWICDF)PF)XIB)962SF8T
M_-49S*U=&_;JQB>_$\L3&R8XXE9#\*.7>O.;7'[#]Y:_>:BN7-KWIS?$ZRDR
M;C@>>6YABN08I<J]K;BO5G'T/Q'E(1ZW;WV)%$TH[2E*YZUI.8T74*\CF-N&
MVFKBJIG@JCO3R3$QQ+!:/JN7UG(T9VQLF=E5/'35'#3/?CEB8GC;9&J;0
M                      '#_P ^?ETKCMPYG:LQFZ+@[(Y-2)^N[:J+);9G
M6[74-J+)VC=DHK6KBX\^SS6+$OI2E:4O55I513=#MMQ-)^\-8C-78QRV6PKG
MDFN?:1VIB:O>N-WWU7ZAI,Y:W.&8S.-$<L4>[GMQA3[Y P)U0B
M                       !,N]G$Y:4S;3V?\1<HN7B9#IV<_GVMV9+Z:NR
MM;9A<ZUR2UPF:KJZIK%,ZEJD.JZ4ITO[2:>A%>D.^L72?@<Y;U:U'Q=Z.A7U
MZ8V3/6IV>\E+GJ_U3X;*7-*NS\99GI4=2J=L1U:MOOH282-DB
M           $-[VFSY]>,?T39=\L&B8/5IZ#F?.T^2B7UC>FY;S57E(R)):.
M0     +6+ ?S$PKX)8Y^)X95K,?+U]>>_*S=CY"CJ1WGK3Q>H
M                        !4X%JU7P     )3?LPWY]\O_ ():<_'&PB+_
M %F?(93KW.]0DOU<?+YOJ6^_4EZ$2)5                        "$][1
M+R]_2IR$Q?BUBER0_AG'V)6[YE6(_P")'NFVLM@1WGHK]&U+8>_(G$W&(S:J
M5HXS,N,]ERE*HITFCU>Z1]5T^K5+L?'9B<*>:W3/^JK&>>(IE#V_VJ_6<_3I
MEJ?B;$8U<]=4?Z:<([,U0CHDAN                                 !
M^RW7&?9[A NUJFRK;=+7-BW&VW&$^Y&FP)\)]$F'-B265(=CRHLAI*VUIK12
M%II6E:5H?E5--=,T5Q$TS&$Q/!,3Q/VFJJBJ*Z9F*HG&)CBF%EQY?_*6%S'X
MEZAWI1V)^4U[L";'L:!#2AINU[)QA7O-F4=,1'_R,2?=(U9\-JOII;YC%>M:
M*I6M;=?TNK1]6O9';\%35C1,\=%6VGLX1LGGB5B-"U*-6TNUG=GPE5.%<<E<
M;*N[.V.:8;EFG;<                 ,3;\^8K=/T3;&^1]Y,O(>G6?.T>5
M#%SWH5[S5?DRJR2T"M(     $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>2D;U<^
MFYGS5/E)D)#Z6@   A(>?'Y<M./^SU\L=16%;&FMR7]Q.P+1;8Z*6_76V+E5
MZ7(DML,THJ#C&PU-NRV>J:LQ;JF0SW-H?A,$U;B[Q?7\K]U9NK_F6:? F>&N
MW'?JHX.>G"=N%4H<WVW?^HYG[TRE/_$O5>%$<%%<]Z*^'FJQC9C$([Y(+@@
M    /8:^S_,=59QBFR->W^?BV;X1?;=DF,9!;'*-S;7>+7(1)B26^ZBVGF^]
M':ZTXE;+[2E-N)4A2DU\<QE[.:L5Y;,4Q58KIF*HG@F)_P"NT];%^]E;U.8L
M533>HJB8F.*86-'ES<Z,-Y[<>+'L^U>]UFV+8?5\:W%@D1Y:EXEFS+%:KDPV
M'UN2JXKE++59UI>4IVG@+7'6XN3%D437C>+0[V@ZA5E:\:LO5X5NK]:GG_:I
MX*N?;AA,)_T#6K.N9"G,TX1F*=ERG]6K]VKAIYMG#$M]S0MX           #
M\\R'$N$25 GQ8\Z#.COPYL*8PU)B3(DEI3,F+*C/)6S(CR&5J0M"TU2M-:TK
M2M*G[$S3,54SA5'!+\F(JB::HQIGAA6[^9GP\G\)^7&Q=5Q8$MG7-YEJSO3M
MQ?2\MF?KG)9$B1;+<W+>ZJF2\0FHD664XKHIQ^ IWI1+J*UL7NUK%.M:3;S4
MS'UF(Z-R.2N.&>;I1A5'-.'$K[O'I-6CZK<RT1/U>9Z5N>6B>"/>[:9YX: &
M_:(     #>WR\^=.>\"-_6G:..4F7O!;W2+CVW, :D(:CYIA:I5'7*1DOJI%
MCY1C[BU2K5*5VU:?[V5J]7D2$+T>\&AV->R$Y6YA3?IVVZ_U:OW9X*HY-O#$
M-WH.M7]#ST9FWC58JV5T_K4_O1PTSR[."96+6H-N:^WQK3#MNZKR*)E6 YW9
MH]\QV]0^]%'XKU5-O1I<9U*)$"YVZ6TY&EQ7DH>BR6EM.)2M"J4KSF\IF,CF
M:\IFJ9HOVZL)C_KAB>&)X)C:GW*9JQG<O1F\M5%5BN,8G_K@F."8XIV,D&,R
M                         A >?AS^9Y";GB<7]97Q$[4.A;S)<RRX6V7X
MUMS3<:&)%MN;J5LK4Q+MVO84A^UQE]/_ )Y^X5I5;=65$V;AZ!.GY.=3S-.&
M;OT^#$\--OACMUSA5/-%/.AK?C78S^<C3<M5CE+$^%,<%5S@GM4\$<\U<R/>
M=^X0     #K%Y+7&%?)?GAK"MUMM)V!:4<KNS.*O-H<B+3ADJ*O#+4\V^VY%
METNV?R;8EZ,NG^- ;DUZ5HA1RN^>IQINA7>C.%^]\73[[VT]JCI;>7!U&Z&F
M_>.MV^E&-BS\95[WVL=NK#9QQBL+2OR>                      " !Y]?
M]3'<7P2U!]6.,D][B?VU9Z]SRY09OO\ W%=ZEOR(<;SL')     VQX$?OT<+
MOXLN.?UP8<:K7OP/._RE[^'4VFA_C63_ )JU_$I6;Q6E8P
M         5>O+G]Z[D[_ !"[I^LC)2S>D_A66_E[?D0K=JOXGF?/W/+EKT;!
M@     [(>0I_4QT[\$MO_5CDQQ^_?]M7NO;\N'6[D?W%:ZESR)3_ ,@1.8
M          $ _P _/8\3/O,<V#:84FDJ/JW ];ZXJZA?>TF6U8JYM<HS=?P4
MK"N>;O,N4_[KS:Z?AI4GG</+38W=MUS&$W;E=?L]&.[%/<0;OQF(O[P7*:9Q
MBU111['2GV:NZXP'9.1    !TN\G6R?E!YEG%"!X4A[P,UR&]]D7_P 1/Y-:
M\S'(_%5[E?\ L\?WJ\1[T?\ A)5Z:?AIS>]]?P>[>;JV>TB/&KIC]+HMTZ.G
MO%E:?VYGN453^A8PE>$_                   JR-]_/INCZ6=C?+"\%H<A
MZ#9\U1Y,*TY[TV]YVORI8G,IB@    EZ>S#?F)R_^%NG/Q/L(B3UF?+Y3J7.
M_0E7U<?(9OKV^]4E-D7I+   # W)KCIKGE=I'/=$[2MR9N+YQ9WH:)S33*[I
MC-]9I5^P9=8'7DJ3&ON-W1#<F.JO5MRJ*M.I6RXXVK/TS4<QI6=MY[*SA=HG
M@XJHXZ9YIC9/=C;@P=1T_+ZIDZ\EF8QMUQP\<3Q51SQ.V.Y.Q6T<HN-^Q.)F
M\\]T1LZ"N/D6$W9R/%N:([K-LRK'9-:OX]E]B4Y57C6;(K6IN0U[I2F5*6P[
MVO-.(38W3-1R^K9&WGLM.-NN.#CIGCIGGB=GLQLF%>]2T_,:7G:\EF8^,HGA
MXJHXJHYIC;[$[88 ,]@@     =0_*F\P>^<"^0<.XWR9/FZ&V6_;<;W+C;%7
M7TQ("7UMVG8-JA(HNKF080Y+==[$)JJ9 =DQJ=%N-.-<QO3N_1KNGS31$1G[
M6,VYY^.B9Y*O8G">*<>DW8UZO1,_%5<S.1N81<CFXJHYZ?9C&.3"PVL%^LN5
M6*RY/C=T@WS'<CM-NOUAO5LD-S+;>++>(;-PM=TM\ME2F94&X09#;K3B*U2M
MM=%4KTJ5^N6Z[5=5JY$TW*9F)B>&)C9,3SQ*>:*Z+M$7+<Q5;JB)B8X)B=L3
M'-,/K'P^P                        KJO-TY=4Y@<T]AY18;HBXZQUJM6
MIM5N19+C]MGXUB<^<FY93#KU2RZC,<FDS)[3R4(6J"Y&;7W>$FI8;=+2?NC1
MK=JY&&9N?&5\L551&%/O:<([.,\: MZM5^]M8N7*)QRUOP*.28IG;5[Z<9[&
M'(YBG2N<                                  W"X$\H;IP[Y7ZBWI%D
M2T6"P9"U:-@P(M7%>_.M\DZ6?-+>N,AMZDQUFT253(C=4*[9\5AQ-*+0FM-1
MKVF4ZQI5[(SA\)53C1/)7&VF>;;LGFF6VT/4JM)U2UG8QZ%-6%4<M$[*H[FV
M.>(67UJNMMOMKMM[LTZ+<[1>($.ZVJY07D2(5PMMPCMRX,Z)(;JIM^++BO)<
M;6FM4J0JE:>BI6VJFJBJ:*XF*XG"8GAB8X86(IJIKIBNB8FB8QB>6)X)?O/E
M]                     (;WM-GSZ\8_HFR[Y8-$P>K3T',^=I\E$OK&]-R
MWFJO*1D22T<@     6L6 _F)A7P2QS\3PRK68^7KZ\]^5F['R%'4CO/6GB]0
M                                   "IP+5JO@     2F_9AOS[Y?\
MP2TY^.-A$7^LSY#*=>YWJ$E^KCY?-]2WWZDO0B1*H
M    UQY<\BL<XG\;]M[_ ,F]7>C:[Q.;<;/;)*U-HR#+IRF[3AF-4JVI+M/R
M@RJ?$B*4CTM-NJ<KT2BM:;'2=.N:KJ-K(6N&Y7A,\E,;:I[5,3+7ZKJ%O2]/
MNYZYP6Z<8CEJG93';JF(5DV<9GDNQ\TRW869W1^^9?G.2WW+\IO,GM]8NN0Y
M)<Y5XO-Q>HBB44<F7&8XY6B:432JNE*4H65L6;>7LT9>S'1LT4Q33')$1A$=
MJ%<[UZYF+U=^]/2NUU355/+,SC,]UY<]7F
M       !)1]G)Y;?H_W9G7$O*;E1G&-VPGLTU\W(=;;9B;1Q&V=;Q CT6INE
M',OP>$I2U=5JJ[9([:$]7%5(X]8FD_6,E1JUJ/C;,]&OJ53LGWM7E3*0_5_J
MOP&<KTN[/Q=Z.E3UZ8VQ[ZGR83/B&TN@                !B;?GS%;I^B;
M8WR/O)EY#TZSYVCRH8N>]"O>:K\F5626@5I      DW>S)_/KR<^B;$?E@Z1
MIZR_0<MYVKR4C>KGTW,^:I\I,A(?2T   &-=Q:DP/?.K\XT[LZR,9%@FPL?F
MXYD5K>2WWJBRJ)6Q.@O.-N^I7BT3FFID&4E/B1)C#3R*T6VFM,G)YN_D<U1G
M,M5T;]NJ)B?T3RQ,;)CCB9ACYO*V,]EJ\IF:>E8N4X3'^'/$[8GBF(E6Z\X^
M(.=\(>1.::-S1+\Z!;WZWK7^7*CUCQ,ZU[<Y$C\F\FC)IU:;E.-,+C3V$*6F
M)<HTABBEI;HM5C-$U>QK>G49ZSLJG973^K7'#3^F)XXF)5\UK2;^C9^O)7MM
M,;::OUJ)X)_1,<4Q,-1#;-4     !OIY='.;,N!7(BQ;1M%)UXU]??5L9W%@
M\9Q%4Y9@TB4E<AZ"R^ZS&3E6,NJK.M+REM=)"%,..4C29"5Z+>+0[.O:?5E:
M\(S%/A6ZOU:N?]FK@JCDV\,0W>@:U>T//TYFC&;%6RY3^M3S?M1PT\^S@F5C
M5K[/\.VK@^*;(U[?X&4X1F]BMV28QD%L<JY"NEGND=$F));[J(=9<[%]KK3B
M4/,.I4VXE*TJ32N^8R][*WZ\MF*9IOT53%43PQ,?]=M8"Q?LYJS3F+%456:Z
M8F)CCB7L3Q>H           .,WG:<&'.7G%F7F>#V5=QW?Q\1=LYPEF#'J]=
M,IQ)<9I>P<#8;0OOE2+C;(#5Q@-(;=D.W&V-1F:)]:<[NQW*US[IU2+-^K#)
M9C"FK'@IJ]Q5VIG">+"J9G@AR.^.B_>NF3>LQCG+&-5.'#53[JGMQ&,<>,1$
M<* 23T@T      !V"\I[S1LIX&[#1A6</SLAXP[!OC#V>8\TRY-N.#7>2VS!
MIL?#V6^Y^LN(PRU2YP$44FY0VNB4>LML*IR.]6[%K7<O\-8PIU.W3X,\$51P
M]"K_ $SQ3S3+J]U]Y;NB7_@;V-6FW*O"CCIG@Z=/Z8XXY\$^7"<VQ'9&)8]G
MF Y'9\OPS++5$O>-Y+8)S-QM%YM4UNCD:9!F1U+;=;6FO2M/0I"Z52JE%4K2
MD#WK%[+7:K%^F:+U$X33,83$QRIPLWK68M4W[%45V:XQB8VQ,2]0>3U
M                 .$/G4>9Y%XCZUE:"TW?D5Y*;3L;K+]RMLI/K.GL#NC3
MT67EC[T=ZDF#FM[:JIFQ-4[%L=5W!2D^!'1*[K<S=F=6S,9_.4_^MM5<$_\
M<JCW//3'NN7VO'.'$[X;R1I67G(Y2K_V-VGAC_MTS[KFJGW/)[;BC&">I2EJ
M4M:JJ4JM5*4JM5*4I5>M5*K7K6M:UKZ:DXH5?\      !/$\A/A^]QUXB-[;
MRRV>I;(Y.2+7GKZ)#'AS;7K&!%D,ZQM3O=2M?_-(5PEWSN36G<S=V4+31;-2
M"]^]7C4=7^J6IQRV6QIYIKGV\]J8BGWL\J;-R-)G3]*^M78PS&9PJYXHCVD=
MO&:O?1R.Y9Q#M                      " !Y]?]3'<7P2U!]6.,D][B?V
MU9Z]SRY09OO_ '%=ZEOR(<;SL')     VQX$?OT<+OXLN.?UP8<:K7OP/._R
ME[^'4VFA_C63_FK7\2E9O%:5C                       !5Z\N?WKN3O\
M0NZ?K(R4LWI/X5EOY>WY$*W:K^)YGS]SRY:]&P8     .R'D*?U,=._!+;_U
M8Y,<?OW_ &U>Z]ORX=;N1_<5KJ7/(E/_ "!$Y@           \3LK86*ZDUY
MG&T<XN%+5AVO,4OV9Y-<*T2I4:R8Y;)-VN*V6EK;H_*5&BJ2RU15%.NU2A/I
M50]\ME[N;S%&5L1C>N5Q33'/,X0\<Q?M97+UYF].%JW3-4SS1&,JO;=VU;_O
M/<6T=RY37ID&T<]RK.[FS1Q3K4*1DUZF7:EMBJ5TJF#:VI*8\=%*42AEI*:4
MI2E*%F\EE;>1R=K)VOD[5NFF/>QACV9X9YU;LYFKF=S=W-W?E+M=54]N<<.Q
M'!#%YDL8    ';KV?/!G,L\QK%K^AI#B=8:IVGG+JU-J<4PW<+/%UK1UM5&U
MT975W8:4=U:HI5*ZIZ]542KBM_[_ ,%N[5;^=NT4]R>G_H=EN)9^%W@IK^;M
M5U=V.A_J3U2"4W                   JR-]_/INCZ6=C?+"\%H<AZ#9\U1
MY,*TY[TV]YVORI8G,IB@    EZ>S#?F)R_\ A;IS\3["(D]9GR^4ZESOT)5]
M7'R&;Z]OO5)39%Z2P    <5/.E\NEOF9HQ>SM;6:C_(S2%GGW+%&H<;Q+AL7
M"&:OW*_ZT75JE9$FY44IV?8D]'.EQ\2,E**3W'4=GN9O#.C9[ZMF9_\ 77YB
M*N2BK@BOL<57-M]S$./WOT#[WR7UG+Q_["S$S3RUT\,T=GCIY]GNL4!UQMQI
MQ;3J%M.M+4VXVXFJ'&W$5JE:%H52BD+0JG2M*^FE2>.';"#^#9/"_P @
M  E;^0)YD_J+]OX(;KOW^R2WI<GCADUU>]$:8\MZ?=M0S)CBNG@SG5N3;!XG
M3M>K(@T<5XD".F+-_=V^E$Z[DJ=L?+4QR<$7.UP5\V%7%5*3MQMX<)C1,Y5L
MGY*9[LT?II[=/ZL);!$Z4@                      !RB\Y3EZGB5PKSAZ
MP71N#M+<]']1ZW;0NGKT1W(H3Z<QRB.VFOC-4Q?$*2ELR:4[&;F_"2KTN)I7
MJMSM(^]M9HBY&.5L_&5\FR?!I]]5ALXZ8JY',;W:K]UZ/7-$X9F]X%';]M/:
MIQV\LPKS2P*!@     .DOE@^7[</,)WK>M?3LAO&$ZYPC#IV69[FMGMD>Y2[
M>Y)<I:L4L,!$U:(-+K?KP\IU*7>O=!@RU)IW(I6G.;S:_3N_D:<Q33%>8KKB
MFFF9PQXZIG#;A$>S,.AW;T*K7L[-BJJ:,O11-5541CAQ4Q&.S&9]B)=^_NR>
MB_M.[9^*&'_YIP7YEY[[-:\:IW/Y<Y+[3=\6D^[)Z+^T[MGXH8?_ )H_,O/?
M9K7C5'Y<Y+[3=\6D^[)Z+^T[MGXH8?\ YH_,O/?9K7C5'Y<Y+[3=\6D^[)Z+
M^T[MGXH8?_FC\R\]]FM>-4?ESDOM-WQ:3[LGHO[3NV?BAA_^:/S+SWV:UXU1
M^7.2^TW?%I/NR>B_M.[9^*&'_P":/S+SWV:UXU1^7.2^TW?%I/NR>B_M.[9^
M*&'_ .:/S+SWV:UXU1^7.2^TW?%I/NR>B_M.[9^*&'_YH_,O/?9K7C5'Y<Y+
M[3=\6D^[)Z+^T[MGXH8?_FC\R\]]FM>-4?ESDOM-WQ:3[LGHO[3NV?BAA_\
MFC\R\]]FM>-4?ESDOM-WQ:3[LGHO[3NV?BAA_P#FC\R\]]FM>-4?ESDOM-WQ
M:3[LGHO[3NV?BAA_^:/S+SWV:UXU1^7.2^TW?%I/NR>B_M.[9^*&'_YH_,O/
M?9K7C5'Y<Y+[3=\6D^[)Z+^T[MGXH8?_ )H_,O/?9K7C5'Y<Y+[3=\6D^[)Z
M+^T[MGXH8?\ YH_,O/?9K7C5'Y<Y+[3=\6D^[)Z+^T[MGXH8?_FC\R\]]FM>
M-4?ESDOM-WQ:3[LGHO[3NV?BAA_^:/S+SWV:UXU1^7.2^TW?%I/NR>B_M.[9
M^*&'_P":/S+SWV:UXU1^7.2^TW?%I<-_-6\M=SR[=AZVMF.Y;?-@ZTV=BMPG
MV3++];(ELN#&6XY<:1\HQR4Q;N^#V0[=<[9*8<HNBW4RUIJFGA54KM]UMY(W
MAR]RJY13;S-JN(FF)QCHS'@SMV\,51/8YW&;S;O?<&8MTVZZKF6N4S,53&$]
M*)VQLV<$Q,=GF<ISJ7,      3Q/(-Y:5Y \.6-2Y)<O7-A<8YT+ 95'WU/3
M9VMKHU*FZRNCOB.*JEF!"AS+&VE-*40S9FZU]*R"]_-)^H:Q];MQAE\S$U\T
M5QLKCMSA5[Y-FX^J?7])^JW)QOY:8I[-$^TGM;:?>NY9Q#M
M        $-[VFSY]>,?T39=\L&B8/5IZ#F?.T^2B7UC>FY;S57E(R)):.0
M   +6+ ?S$PKX)8Y^)X95K,?+U]>>_*S=CY"CJ1WGK3Q>H
M                     !4X%JU7P     )3?LPWY]\O_@EIS\<;"(O]9GR&
M4Z]SO4)+]7'R^;ZEOOU)>A$B50                      !$$]I"Y>JOF8
MZYX88C='*6W"FXNU-P-1UU2W)RF]V^K6N\<E535#G6QXS-DW1YI7>R][[PW*
M='(].DN>KK2.A9N:S>CPJ_ M]6)\.>W5$4\O@SRHI]8.J].[;TBU/@T>'<[,
MQX$=J,:O?1R(M9)Z-0     )!WEF>21;N;?'IW?^T]G9CJVT7_+KS9=<V_'+
M%9[G7),>QM2+7>,HD/75Q/AQ5Y2U,M["$4HKOMSRE>Y4BM> WEWUJT74/J&5
MM47:Z:(FN9F8PF=L4[/V<)GLP[O=S<ZG6<A]>S-RNU157,41$1.,1LF=O[6,
M=J71+[LGHO[3NV?BAA_^:<]^9>>^S6O&J;_\N<E]IN^+2?=D]%_:=VS\4,/_
M ,T?F7GOLUKQJC\N<E]IN^+2?=D]%_:=VS\4,/\ \T?F7GOLUKQJC\N<E]IN
M^+2?=D]%_:=VS\4,/_S1^9>>^S6O&J/RYR7VF[XM)]V3T7]IW;/Q0P__ #1^
M9>>^S6O&J/RYR7VF[XM)]V3T7]IW;/Q0P_\ S1^9>>^S6O&J/RYR7VF[XM)]
MV3T7]IW;/Q0P_P#S1^9>>^S6O&J/RYR7VF[XM)]V3T7]IW;/Q0P__-'YEY[[
M-:\:H_+G)?:;OBTGW9/1?VG=L_%##_\ -'YEY[[-:\:H_+G)?:;OBTGW9/1?
MVG=L_%##_P#-'YEY[[-:\:H_+G)?:;OBTGW9/1?VG=L_%##_ /-'YEY[[-:\
M:H_+G)?:;OBTGW9/1?VG=L_%##_\T?F7GOLUKQJC\N<E]IN^+2?=D]%_:=VS
M\4,/_P T?F7GOLUKQJC\N<E]IN^+2?=D]%_:=VS\4,/_ ,T?F7GOLUKQJC\N
M<E]IN^+2?=D]%_:=VS\4,/\ \T?F7GOLUKQJC\N<E]IN^+2?=D]%_:=VS\4,
M/_S1^9>>^S6O&J/RYR7VF[XM)]V3T7]IW;/Q0P__ #1^9>>^S6O&J/RYR7VF
M[XM)]V3T7]IW;/Q0P_\ S1^9>>^S6O&J/RYR7VF[XM**?R6T7DW&;?FV-#9=
M1Q=[UAF=VQJLUR/6+2]6EIRDK',D8CU6Y5F'D^.2HEQ8355:T8E(])*>FYZU
MJ60M9^S[2[1$X<D\<=FF<8GGA&.HY*YIV>NY&[[>W7,=F.*>W&$QV6#S-88
M   /=ZNV1EFG=D8+M;!+DY:,QUWE=BS'&[@W6O1B[8_<8]RB)?;I6B9$)]R/
MX;[*^K;["UMKI5"JTKX9K+6LYEKF5OQC9N433,<TQAW>2>*7OELQ=RF8HS5B
M<+UNJ*HGGB<?_P \L+.WCMN[%>2.C=6;UPIQ"L=V?AMHRB-&2]ZPY:9TMCPK
MYCLMZC;5%W'&;ZQ)M\GHFE/6(RZ4]!6?4<E=T[/7<C>^4M5S3V8XI[%483'-
M*QN0SEK4,E:SMGY.Y1$]CECLQ.,3SPS.8;,                &)M^?,5NG
MZ)MC?(^\F7D/3K/G:/*ABY[T*]YJOR959):!6D     "3=[,G\^O)SZ)L1^6
M#I&GK+]!RWG:O)2-ZN?3<SYJGRDR$A]+0    .6/FR>7W:N=_'>9$QN!!8WW
MJUFYY1IV^.49CO7.36+1=ZUQ<)SO:ANS9LU%:0A2U(1&N3$5]2DM(>2OJ-U-
M?JT+4(FY,_4+N%-R.3DKB.6GV8F8X<',[T:%3K>0F+<1]>M8U6YY>6B9Y*O8
MG">#%7G7>T77'[M=+#?;;.L][LEQFVB\6BYQ7H-RM5UMLEV'<+;<(4E#<B'.
M@RV5M.M.)2MMQ-4JI2M*T+ T5TW*(N43$T51$Q,;8F)X)B>24#UT56ZIHKB8
MKB<)B=DQ,<,3SP^>?3Y      DE^0KYDJ=.9M%X9[FR"D?5FR;TI>G+]=)-$
M0\#V5>)2UO8FZZ[[F+CFQI[]/!]U1N->U)KV])S[K<<[][N?7+,ZQDZ<<U;I
M^,B/=41[KLT1W:>K$)"W(WA^J7HTC-U?\:Y/Q<S[FN?<]BN>#DJZTRFB$-)>
M             @<^>'Y?*^*&_G-TZWL2HN@M^W6XWF"U BH:MF ;->6]<<JP
MBC45M,:VV>Z476Z65'1I'@+DQ64=D"JE3IN3K_WKD/J69JQS^7B(G'AKHX*:
MN>8]K5SX3/MD);YZ%]UY[ZYEZ<,C?F9C#@IKX:J>:)X:>;&(]JX;';N,
M   =<_*\\U?8G 7+:8?DK=RSWC5EMX8DYA@:9'B73#YLEQIF9G.NJR741HMZ
M1&32LRWK4W$NR&TI6IEY+4EOD]Y]ULOKUGX:UA;U*B/!JXJH_5KYN2>&GGC&
M)ZK=O>?,:'=^!N8UZ=7/A4\=/[5'/RQP5<T[4]74FW=;;VU[C>U=1Y?9\ZP#
M+859UBR.R/J=BR4(=7'DQGVG4-2[?<K?+:6Q*B2&VI,5]M3;J$+2I-()S>4S
M.1S%65S=$V\Q1.$Q/_6V)X8F-DQMA-V5S67SMBG,Y6N*[%4;)C_K9,<<3MB>
M%D<QF0                   !R3\S_S4]:\",,DXGCSELSGDSE-F5(P?7E7
M%OV[&(LSQ&(V<;%<BN-N0+#&<0I<6#1QN;=W6_#:\)BCTICK-V-ULSKU[X6Y
MC1IM%7A5\=7[-'+/+/!3QXSA$\MO)O-E]#LS:MX5ZC5'@T\5/[5?)')'#5S1
MC,0#MA;"S?;&;Y/LC9&3W;,LZS*[2;YDV37R365<KM<I5:>(\\YT2VTRTVE+
M3++24,1V$(::0AM"$4GG+Y>QE+%.6RU,46*(PIIC@B/^N&>&9VSM0;?OWLU>
MJS&8JFN]7.,S/#,_]=S@AXT]GD     !T/\ +!X6W+G#ROPK6\R'*KJ_%7&L
M_P!SW9I*VVHN 6*;%K(L3<I+C/@W7-KBZS:8W8I3S-)3DJB%MQ7>G/[S:S3H
MFE5YF)CZU7X%N/VYCA[%,>%/%LB..&^W;T>K6=4HR\Q/U:GPKD_LQQ=FJ?!C
MLX\4K'B'#B6^)%@0(L>#!@QV(<*%#8:C1(<2,TEF-%BQF4H9CQX[*$H0A":)
M0FE*4I2E"NLS-4S55.-4\,K Q$4Q%-,84QP0_0?C]
M   ( 'GU_P!3'<7P2U!]6.,D][B?VU9Z]SRY09OO_<5WJ6_(AQO.P<D    #
M;'@1^_1PN_BRXY_7!AQJM>_ \[_*7OX=3::'^-9/^:M?Q*5F\5I6,
M                %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0K=JOXGF?/W/
M+EKT;!@     [(>0I_4QT[\$MO\ U8Y,<?OW_;5[KV_+AUNY']Q6NI<\B4_\
M@1.8           (M'M#_/.%9<6MW!?6]Y;>R#)ZV;+]]28#]:KLN-17H]XP
MO I#C*^UN?D4]EF[365=KC<*/$ZTJW,K0E#U?:%57=G7,S3\73C3:QXYX*JN
MQ$>#'/,\<(TW]UN*+4:+EY^,JPJNX<4<--/9F?"GFB.5$');14     !+)]F
M1U"_1/*+?<V)5,9:L(U#C4[I3M=?:I/S/.(E:UIW4JPV]CRZ=*]*^)7K^"A%
M/K+S<?\ %R%,[?"N51W*:?\ 6E#U<Y2?^3GIC9X-N/9JJ_TI8Q%24
M            59&^_GTW1]+.QOEA>"T.0]!L^:H\F%:<]Z;>\[7Y4L3F4Q0
M   2]/9AOS$Y?_"W3GXGV$1)ZS/E\IU+G?H2KZN/D,WU[?>J2FR+TE@
M0J//L\N2FD=BN\P=0V)+&I=M7VK6TK):XRJ1<!VK=%K?<O\ X;=:TBXYLE^J
MWJU[?"C7FCR*J2F9$93,^XF\7UW+_=&;J_Y=JGP)GW5$<79H]FG#DF4/[[[O
M_4LQ][92G_BW:O#B/<USQ]BOV*L>6(1QR1$?@     ?0M%WNN/W:UWZQ7*=9
M[W9+C"N]GN]LE/0;E:KK;9+4RWW*WS8RVY$.=!ELH=:=;4E;;B:*36E:4J?-
M=%-RB;=<1-%43$Q.V)B>&)CDE]45U6ZHKHF8KB<8F-DQ,<$QSPL'_*2\Q&U\
M[]!,L9;.A1>0NJ(MLQ_;5F36/&<R-NK%&+-L^T0F:-MTM66ICK]<;:0A$&ZM
MOM4;0PJ*IV -[-WJM"S^-J)G3[LS-N>3EHF>6GBY:<)X<<)VW6U^G6\CA=F(
MS]J(BN.7DKCFJX^2K&.##'K <JZ@                      @'^>;R]5R9
MYFW_  ;'+HY,UAQNI<M5XTTVNM8,[-(\U'Z4LC91U4A3DG)(2+4AU"E-OQ+,
MPZCI1RO6>=R-(^[=&IOW(PS69PKJY8I]Q'<GI<TU3"#M]-5^\=7JLVYQRV7Q
MHCDFK'PY[L='GBF)<8#LG(      6 WDA<1:<7^%6+9)D-LI"V;R'K V[F"G
MFU(GP<=N=O336N,R*+2VZU2U8K(I.<8<0EV-<+K+;5_=IT@/?;5OO/6JK=N<
M<ME\;=/),Q/AU=NK9CQQ3$ITW-TK[MT>FY<C#,YC"NKEB)CP([5.W#BFJ8=B
M3D'6                    <L/..XJ4Y5<&]E6VS6RL_8FHFU;GUW2-%5)N
M,FY89;Y[F1X_#;9[94IS)L,DW"*S&16M'9]8JZH6II%#J-S]5^Z];MU5SAE[
MWQ=?)A5,83[VK"9GDQY7,[VZ9]YZ+<IHC',6OC*.7&F)QCMTXQARX<BN_+!H
M%      ZB^3[RTIQ(YN:YOM]N7J&M-J+IIW9M7GT,P(=DS&=!;L.32UOKI&B
MLXCF,:WSI$BJ:N-VU$MM%:>,KKS&]VD_>VBW+=$8YFU\91RXTQ.,>^IQB(Y<
M.1TFZFJ?=6LVZZYPR]WXNODPJF,)][5A,SR8\JQ**]I\
M     0WO:;/GUXQ_1-EWRP:)@]6GH.9\[3Y*)?6-Z;EO-5>4C(DEHY
MM8L!_,3"O@ECGXGAE6LQ\O7UY[\K-V/D*.I'>>M/%Z@
M                  %3@6K5?      E-^S#?GWR_P#@EIS\<;"(O]9GR&4Z
M]SO4)+]7'R^;ZEOOU)>A$B50                     #%F\-O8GH'3^RMU
M9S(]7Q36.&WW,;Q1+K+4B:U9H+LF/:+?5]2&W;M>YB6X<-KKU>E/MHIUJJE#
M*R64NY_.6\E8C&[=KBF.;&>&>:.&>:&-G<W:R.4N9R]\E;HFJ>U'!'//!'/*
ML5W=MW+=^;>V1NC.Y59>6;-S&^9A>:^(XZQ$>O$YV2Q:H/B>Z:M5EAJ;AQ&J
M=$LQ6&VTTHE-*4LODLI:R&4MY*Q&%JU1%,=J.&>>>&>695QSF:NY[-W,Y?G&
M[<KFJ>W/!'-'!'-#%IE,8    &7=!:8RWD3NG66C\&9J[E&SLQLV)VYWP')#
M%L;N,E-+E?IS32DN>]6.VI#\^6JE:=D6,XKK3H8F?SEK3\E=SM_Y*U1-4\^'
M!$<\SA$<\LK(Y.[G\Y;R5GY2Y7%,<V/#,\T1C,\T+.O3^K,2T?JS7VH,#@TM
M^(:VQ&QX=8(_:W1Y4"QP&829DQ3:$)?N5Q<:5(E/5IW/R75N*ZJ56I6?-YJ]
MG<U<S=^<;URN:I[,SCLYHX(Y(6.RF6M9++6\I8C"U;HBF.Q$8=V>&>=D<QV0
M                   !$;]I-XHU@WS4W,;%[<NL:^,HTYM5R.RNK;-VM[4R
M\ZYR"55M*_=W&UIN-M??<JA"*08+5*J4Y2E)9]7&J]*B[H]V=M/QE'8G97':
MG"8CGJGB19ZPM+Z-=K5K<;*OBZ^S&VB>W&,3V*8XT50E)&0     $N?V;?EL
MJY6':/#+*[DFLG'*R-P:D3)=KWKLEQEQ+9L?&HM7%(;2W;;U)@76,PW1;KJK
MC<':]$-5Z1-ZQM)Z-RUK-J-E7Q=SLQMHGMQC3,\U,<:5/5[JO2HNZ1=G;3\9
M1V)V5QVIPJB.>J>)*H(M28                ,3;\^8K=/T3;&^1]Y,O(>G
M6?.T>5#%SWH5[S5?DRJR2T"M(     $F[V9/Y]>3GT38C\L'2-/67Z#EO.U>
M2D;U<^FYGS5/E)D)#Z6@     (B7M ?ER)L-R>YUZ;L"DV>^38=MY$V"T0Z)
M8M5\E+1#LNV4LL4[&XN02%MV^]*HE-*7!4:56BURI3J):W!WB^$I^X\Y5X=,
M8V9GCCAFWVN&GFQCBB$5[];O]"K[ZRE/@53A=B.*>*OM\%7/A/'**Z2BC,
M   #_3;CC3B'6EK:=:6EQMQM54.-N(K12%H6FM%(6A5.M*T]-*CAV2<&V.%/
M2\E?S(F^9&F_T0[1O='^2&E[+#8OC\U[NG;+U_%K$M5HV(A;JZNS+U#D.M0;
M]_>K26MB4I5/7:-MP3OGNY.CYSZWE:?_ %UZK9R45\,T=CCIYL8]RF[<_>'[
MVRGU3,U?^PLQMQX:Z>"*^SQ5<^$^Z=NSBG9            P'R=XY:YY8Z/S
MS0^TH%96+YO:E1D3XZ&:W;&;[%7258,LL#SR5)C7K'KHTW(9K7JV[1*F7:+9
M<<0K/TS4<QI6=MY[*SA=HG@XJHXZ9YIC9/=C;$,'4M/R^J9*O)9F,;=<</'$
M\54<\3M]B=BMRY4<9]D\1-Y9OHG:4"L?(,2GU][[LRRXU:LNQF6IQS'\PL*W
M*J\:SWZ"FCB*=REL.T<8=[7F7$IL9I>I9;5\C1GLK/Q=<;8XZ:N.F>>)[O#&
MR85\U/3LQI6=KR69CXRB=D\54<54<TQW.#AAKR;!@       -_\ @3YC.^.
M>>+O6O9_Y3ZVO\N.O8.G[_,?3BN5,-THW6X0%I2^O%\MCQ_1'N<5NJ_<I1(;
MD,4JS70:]N[D=>L=#,1T<S3'@7(CPJ>:?UJ>6F>UA.UO=#W@SNAW^GEYZ67J
MGPK<^UJYXY*N28[>,;$[WA;SWX\\ZL#IEFF\G0WDEKB1G<WU??W8D//\%DOU
MHWTN]H;?=]<LSTBE41KG%4]!D].VBTNI<:;@S6=!U#0[_P %G*?BYGP:X]I5
MV)Y>6F=L=C:FO1]<R&M6/A<I5\9$>%1/MJ>S')R3&R>SL;IFF;@
M        (^GFH>==A_&&/?\ 1/&*Y6//>1"D2[3D>6M^!>,,TO)2ND>2W+1T
M<@9/L"/3Q$MV^BEQ+;(314ZBU(K"=[_=?<N]J<TY[4XJMZ?PQ3P57/TTT<_#
M,>U_6CA-YM\+6FQ5DM-FFO/\$U<--O\ 1-7-P1/MN284>;9MEVR,MR'/,^R.
M\9?F>6767>\DR6_SGKC=[S=9KE7),R=,D*6XZXM5>E*>A*$4HE-*)I2E)GLV
M+.6M4V+%,46:(PBF(PB(CD0]>O7<Q=JOWZIKO5SC,SMF9EY<]7F     !^N!
M G76="M=KA2[E<[E+C0+=;H$9Z9.GSICR(\2%"B1T.2)4N5(<2VVVVE2UK51
M*:5K6E#\JJIHIFJJ8BF(QF9X(CEE^TTU55133$S5,X1$<,SR0L//*6X%Q."O
M&6V6C)8,3].>T_>_--S7-KPW78%QK'=KCNOV)3?<ERW8#;9JV%]JW&G;H_-?
M:55IYM*:^;UZ[.N:G-=N9^HVL:;<<L<=?9JF,>K%,3MA/6ZVAQHNG13<B/KM
MW"JY/)/%3V*8G#LS,\$NI!S#I0                      !  \^O\ J8[B
M^"6H/JQQDGO<3^VK/7N>7*#-]_[BN]2WY$.-YV#D@    ;8\"/WZ.%W\67'/
MZX,.-5KWX'G?Y2]_#J;30_QK)_S5K^)2LWBM*Q@
M  J]>7/[UW)W^(7=/UD9*6;TG\*RW\O;\B%;M5_$\SY^YY<M>C8,     '9#
MR%/ZF.G?@EM_ZL<F./W[_MJ]U[?EPZW<C^XK74N>1*?^0(G,          .6
M'FA>9C@/ 35<B+:9-GRKD;FUM>;U=KIU[UANWH<76*YG^;L1G$R+?B-F5WJ8
M:55MZ\3&Z16*I0F5)B]1NQNU?U[-8UQ-.G43X=?+^Q3RU3Q_JQMGBB>9WDWB
ML:'E9BB8JU"N/ HY/VJN2F.+]:=D<<Q7T9QF^6[+S')]@YY?[CE.:9G?+EDF
M49%=GO'N-XO=VE.3)\Z4NB4-T6\^[6M$(2EMM/1*$I32B:3]8L6LM9IR]BF*
M;-%,13$<$1'!""KUZ[F+U5^_5-5ZNJ9F9X9F>&7ECU>0     %B[Y0?'9WC9
MP#T;B]T@(@9?GMID;CS='AN,R%7O92FKW:HUP8=2EQBYV/"*6BV245I[EZ"J
MA7G>[4(U+7K]VF<;-N?@Z>Q1LG#FFKI51V4_;J9"=.T.S:JC"[7'PE79KVQC
MSQ3T8GL.F1S3H@                  59&^_GTW1]+.QOEA>"T.0]!L^:H\
MF%:<]Z;>\[7Y4L3F4Q0    2]/9AOS$Y?_"W3GXGV$1)ZS/E\IU+G?H2KZN/
MD,WU[?>J2FR+TE@     8^VOJS!=W:VS74NS+#%R; ]@8_/QK)K+*ZI3*MT]
MKLJ[&?16C\&Y07Z(D1)32D/Q)33;S2DN-I53(RN:OY+,T9O+533?MU1-,\\=
M^)X)C@F-D['AFLM8SF7KRN9IBJQ<IF)CFGO3'#$\,3MA6\\[^'&<\&^1>7Z2
MR^DBX69E?Y0ZVS!;/A1LYUW=),E-@O[54MM-(N+%8[D*Y,HIVQ[E%?;15;=&
MW%V+T+6+&MZ=1G;.$5\%=/ZM<<,=CCCEB8XU?-;TF]HNH5Y.[MHX:*OUJ)X)
M[/%/),3Q--S<-2     !L_P[Y6[&X8;\PO>VMWZO3,?E>I9-C+TIZ-:LYPN>
MXRG(L0O-6J+IZK<XS5%,NU0Y6)-:9DH35;*:&LUC2LOK.0KR.9X*HQIJXZ:H
MX*H[''RQC'&V6DZGF-(SU&=R_#3.V.*JF>&F>S[$X3Q+(SC]OC7')K3N";QU
M1>/?G!\_LS=UMKCJ6VKA;93;CD.[X_>XK;KR(5^QV[1WH4UFBUI;DL+HE:T=
MJU5SU#(YG3,Y7D<W'1OVYPGDGDF.6)C"8YI6#R.>R^HY2C.Y6<;-<8QRQRQ/
M),3LGG9D,-E@                   :!^9KRT8X9\.MI[9A3&X^>7*!37^I
MV*NM(?>V/F+$J#99[#;M:4DIQ2&W*O;S5.E78]M<12M*JI4WV[6DSK.L6LI5
M'Q$3T[G4IVS'OIPICGJ:/>/5(TC2;N:IGX^8Z-'7JV1/O=M78A6XR)#\M]^5
M*?>DRI+SDB3)D.+>?D/O+4X\^^\XI3CKSKBJJ4I5:J4JM:UKU+&Q$1&$;(A7
MN9F9QG;,OY     !T&\K[B2[S,YDZPU;<;>Y-U]8I2]C[;<HGK':UUATF')N
M5OE5Z*JAO++Q)@V1*DTJI#ES2O\  FM::#>?5HT?1[N:IG#,51T+?7JX)][&
M-7O6]W;TO[WU>WEJHQL4STZ^I3PQ[Z<*>VLAFVVVFT--(0TTTA+;;;::(;;;
M12B4(0A-*)0A":=*4IZ*4*Y\.V>%8/@V1P/]@                    _XI
M*5I4A::*2JE4J2JE%)4E5.E4JI7K2M*TKZ: 5P'FF\4Z\/\ FIMG6UJMU;?K
M_(YZ=FZJHE"41*8#G#\J?#M<%-*U52+B-[:G61-5^[7[V]]>M%456Q>Z^J_>
M^BVLS5..8ICH5]>G9C/6C"KMJ^[RZ9]TZQ=R],86*IZ='5JVX1U9QI[3G@=
MT(     %BSY1O+97+[A3K?*[]=JW39NNF_T3;5<DOU>N4O*,0APV[?D<]2TM
MN/OYABTF!<GGJ)\)4R1(;36M6E]*\[V:3]T:U<M6XPRUSXRCDZ-7#$=6K&,.
M2(GC3[NKJGWKH]N[7..9M^!7RXT\$SUJ<)[,SR.FQS3HP
M    (;WM-GSZ\8_HFR[Y8-$P>K3T',^=I\E$OK&]-RWFJO*1D22T<@     6
ML6 _F)A7P2QS\3PRK68^7KZ\]^5F['R%'4CO/6GB]0
M                 "IP+5JO@     2F_9AOS[Y?_!+3GXXV$1?ZS/D,IU[G
M>H27ZN/E\WU+??J2]")$J@                     $6CVD/EY2RXCKCACB
M5T;]?S-R)M;;K<5]578^,66>ZQKW&YJ4=S-6[WDD.1=76EU2\U6TPW.G8\FJ
MI0]7.D=.]<UF['@T>!;ZTQX<QV(F*??51Q(T]8.J]"U;TBU/A5^'7V(GP8GL
MSC5[V.5$');14     !*C]FYXC)NN1;-YG9;:^^+B_K6H]0N245I3\H+E!BS
MMC9+$;6A"^^W6&=#M4>0A2FETN,]JM.]JO;%WK&U;H6[6C6IVU?&7.Q$X41V
MYB:ICFIGC29ZOM*Z5RYJ]V-E/@6^S,8USVHF*8GGJCB2[")4J
M          -:>8G'6R<L>,^X= 7NL=G](.(385@N,I-%-6/,[:MJ]83?EUHR
M\Y1FS97;H;[M$)[W&4+12M.XV6CZC7I6I6<_1C\77$S'+3.RJ.W3,QV6NU;3
MZ-4TZ[D:_P#N4;)Y*HVTSVJHB59'E.,WW"LFR+#<IMDJRY-B5]N^,Y%9YK=6
M9MIOMAN$BU7>V2VE=%-2H%PBN-.)KZ4K16A9:U=MWK5-ZU,56JZ8JB8X)B8Q
MB>W"N=VW79N56;L3%RBJ8F.28G"8[4OA'V^     ;&<1^1&0\4>2&HN0&-T?
M?E:YRZ'<KK;8ZD(<OV)SFWK-FF-T4ZI+2*Y#B=QF0TK57HTMZBZ=*II6FNU;
M3[>JZ=>R%S@N481/)5&VF>U5$2V&E9^YI>H6L];X;=>,QRTSLJCMTS,+-_#<
MNQW8&(XOG>(W./>L5S/'K-E6-7B(NCD6Z6'(+='NMIN$==*UHIJ7 EMN)_[%
M%:;UFYE[U5B]$TW:*IIF.28G"8[JQEF[;OVJ;]J<;5=,51/+$QC$]QZ0\WH
M              8FWY\Q6Z?HFV-\C[R9>0].L^=H\J&+GO0KWFJ_)E5DEH%:
M0     )-WLR?SZ\G/HFQ'Y8.D:>LOT'+>=J\E(WJY]-S/FJ?*3(2'TM
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
M,4XT\U=.,QXU.,<\Q3#@=_M,^LZ=3J-N/C<O/A<]%6$3XM6$\T35*$J32AT
M    #NWY ?+2NA^7U-+Y)<O5M?\ )N#$PRB)#ZT1(&T;.J5-US/HE2ZM^->G
M)4RR)2E'>](N<>M542WTKPV_ND_7M(^N6XQS&6GI=FB?;QVME78IGE=KN-JG
MU+5?J=R<+&9CH]BN-M$]O;3V9A.T(-36                   !#>]IL^?7
MC']$V7?+!HF#U:>@YGSM/DHE]8WIN6\U5Y2,B26CD     "UBP'\Q,*^"6.?
MB>&5:S'R]?7GORLW8^0HZD=YZT\7J
M     5.!:M5\     "4W[,-^??+_ ."6G/QQL(B_UF?(93KW.]0DOU<?+YOJ
M6^_4EZ$2)5                     >5SG-<8UMA>6[#S6[1[%A^#8W>\NR
MB]2ZUI&M5@QZW2;M=Y[W;2JE(BP8BU]J:54KITI2M:TH>MBS=S-ZC+V8Z5ZN
MJ*:8Y9F<(CNO*]>MY>S7?O3T;5%,U3/)$1C,]Q63<M^1.2\K^1VVM_Y15]N7
ML/*YEPM5M?4FM;!B<%#5IPW&T40XZWTL&+0(D52DJK1Q;2G*UJI=:ULKI.G6
M]*TZUD+7!;HPF>6J=M4]NJ9E735<_<U34+N>N\-RK&(Y*8V4QVJ8B&N9L6O
M   !ZG!L*R?9.:8EKS"K3(ON89SDEDQ+%[+$I2LFZW_(;C&M-H@,]U:)2N5.
MEH1W*K1*>O6M:4I6IY7[UK+6:\Q>GHV:*9JJGDB(QF>X];-FYF+U%BS'2NUU
M13$<LS.$1W5F_P 3N/6.<5..FI- 8O5AZ#KC$8-IN%R892PF_9/*4[=<OR1;
M:6VJI<R+*)\N96BJ=R?&[:_@*TZKJ%S5=1NY^[[:Y7,Q')3P4QVJ8B.TL9I>
M0MZ9I]K(V_:VZ(B9Y9X:I[<S,MAS7L\                      @O>T%<3
MOT(\MH>]<;MGJN!\F;9(R*6J.UVP[?M/&40+;G46O9126EW^+)M]X[G%45(E
MS9E4T[6J])PW U7Z[I,Y&Y.-_+3AV:*L9I[FVGFB(Y4+[]Z7]3U6,[;C"QF8
MQ[%<815W=E7/,SR.")W;AP     )O?L\G+96WN,F0<<,INU9>;<<KDTG'$3'
MZN3)^I<MD2YMA2S5Q%'9+>*9"W.@*I12TQ(;D%KW":MI(4]8.D_5-3IU&U&%
MG,QMY(N4X1/C1A///2GE3)N%JGUO3JM/NSC>R\[.>BK@\6<8YHZ,)"A'[O
M             #$V_/F*W3]$VQOD?>3+R'IUGSM'E0Q<]Z%>\U7Y,JLDM K2
M     !)N]F3^?7DY]$V(_+!TC3UE^@Y;SM7DI&]7/IN9\U3Y29"0^EH
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
M/WZ.%W\67'/ZX,.-5KWX'G?Y2]_#J;30_P :R?\ -6OXE*S>*TK&
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
MN5WKE5V[,U7*JIF9GAF9G&9[<K%6[=%JW3:MQ$6Z8B(CDB(PB.U#[1\/L
M                   \=L/ \9VE@6:ZTS2!2Z8AL'%,@PO)[=6M$>NV#)[5
M*LUVC)<JE?A..P9BZ)72E:H5T53TT/;+W[F5OT9FS.%ZW7%5,\DTSC'LP\LQ
M8MYFQ7E[T8VKE,TS'-,82K#>2.C\EXU[XVOHC+N]=\UAFMYQ=R8IA<9%XMT5
M_P :PY#&87[MN#DEA?C7"/U]-6)**EF-.SMK4LC:SUGVEVB*L.2>..S$XQ//
M"N&H9*YIV>NY*[[>W7-/9CBGMQA,=EA,S6&    #Z=DO5UQN\VC(K%/D6N^6
M&YP+U9KG$7X<NW76URVIUNGQ7.E?#D0Y;"'$*_L4FE3YKHHN43;N1$T51,3'
M+$[)A]45U6ZXN43A73,3$\DQMB5F-P7Y.6GF!Q6U!OF N*B[95C+$/.+9%4U
MVV38>/J59<VM?@-K4N-%3?X3S\-+E$+<@/L.U32CE"MFN:97I&J7LA5CT**O
M!GEHG;3/<G">>)A8K1=1IU;3+6>IPZ=5/A1R5QLJCN\'-A+;8U+:
M           AO>TV?/KQC^B;+OE@T3!ZM/0<SYVGR42^L;TW+>:J\I&1)+1R
M     !8P8;YJOEWP,0Q2!,Y9ZICS(6-V*)*CN7"Z4<8DQK7%9?972EKK3O:=
M15-?^VA7F]NMO#5>KJIREW":IXHY>RGZSO-H--JFF<U:QBF..>3L/2?S8/+F
M^USJ;_>%T_X4>7]*[Q?9+O<C_%Z?U/H'VJUW9_P/YL'ES?:YU-_O"Z?\*']*
M[Q?9+O<C_$_J?0/M5KNS_@?S8/+F^USJ;_>%T_X4/Z5WB^R7>Y'^)_4^@?:K
M7=G_  /YL'ES?:YU-_O"Z?\ "A_2N\7V2[W(_P 3^I] ^U6N[/\ @?S8/+F^
MUSJ;_>%T_P"%#^E=XOLEWN1_B?U/H'VJUW9_P/YL'ES?:YU-_O"Z?\*']*[Q
M?9+O<C_$_J?0/M5KNS_@?S8/+F^USJ;_ 'A=/^%#^E=XOLEWN1_B?U/H'VJU
MW9_P/YL'ES?:YU-_O"Z?\*']*[Q?9+O<C_$_J?0/M5KNS_@?S8/+F^USJ;_>
M%T_X4/Z5WB^R7>Y'^)_4^@?:K7=G_ _FP>7-]KG4W^\+I_PH?TKO%]DN]R/\
M3^I] ^U6N[/^!_-@\N;[7.IO]X73_A0_I7>+[)=[D?XG]3Z!]JM=V?\ !D/5
M/F$<+-XY]8=7:EY%:\SO8.4>^GY/XI8YD]VZ77WELMQR*Z^JMO6]AI7J-DM,
MF2OJJG1ME5:=:^@Q\UN_K.1L59K-Y>Y;R].&-4X81C,1''QS,0R,KKNCYV_3
MELKF+==^K'"F)VSA$S/%Q1$RW(-.VP                     !4X%JU7P
M    )3?LPWY]\O\ X):<_'&PB+_69\AE.O<[U"2_5Q\OF^I;[]27H1(E4
M                 !'-]HEY>_HMX_8MQ9Q.YO1LTW_+I>LT]4=\-VW:CQ2<
MVX[#D*31+S7Y:Y:TPPW5"NUV';9S+E.URE%2)ZO=(^M:A7JEV,;.7C"GGN51
MP^]IQGLS3,. W^U7ZMD*=,M3\=?G&KFHIG_55A'8BJ)0HB9T/      2+?9V
MN(E-J<ALJY1Y7;:/X;Q\AIM6&TEQE+BW3;67P)3#$F,MQ"XK]<(Q14B2ZBO1
MUB9<;>\BM*IZD>>L+5_JNGT:7:GX[,3C5S6Z9_U581SQ%4._W!TKZSGZM2NQ
M\38C"GGKJC_33C/-,TRFQ$+IA                       ',GS=.)Z>6_"
M/9V+6>VUN&Q];L?I?U=1E-%2WLHPN%->N-BCI[FZON99B,JY6UEI2TM>N26'
M5=:LI.EW2U7[IUNU=KG#+W/BZ^K5,83[VK"KL1,<;G-ZM+^]=&N6J(QS%OXR
MCLT\,>^IQCLS$\2NF+#("      Z ^6'RR>X;<R=5[4GSZP\!O$_]'>V$*6I
M,9>N<RDQ(5WN,E*5)4Y3%+@U$O;::5IWO6U*:^Y56E=!O-I4:QH]W*TQC?B.
MG;Z].V(]]&-/;;W=O5)TC5[69JG"Q,]"OJ5<,^]G"KM+(MMQMUM#K2T.M.H2
MXVXVJBVW&UTHI"T+36J5H6FO6E:>BM"N?!LGA6#X=L<#_8
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
M5:]^!YW^4O?PZFTT/\:R?\U:_B4K-XK2L8                       *O7
MES^]=R=_B%W3]9&2EF])_"LM_+V_(A6[5?Q/,^?N>7+7HV#
M            #MIY+?EOR>9.Z6]M;-L:W>-NEKY!EY$B='ZP-E9Y%I&NEFUN
MQ1]M3$ZTL-K9FW^E*+[8"V8RJ)K.;<1Q>^6\<:/DOJF6J_\ 97J9PPX:*>":
M^:>*GGQGW.#L=T-WYU?.?6LS3_Z^S5&./!75PQ1SQQU<V$>Z3VDI2A*4(31*
M4THE*4THE*4IITHE-*=*4I2E/10@A-[_ *                    "K(WW\
M^FZ/I9V-\L+P6AR'H-GS5'DPK3GO3;WG:_*EB<RF*    "7I[,-^8G+_ .%N
MG/Q/L(B3UF?+Y3J7._0E7U<?(9OKV^]4E-D7I+        /BY)C=AS'';[B6
M56B!D&,Y/9[EC^0V*ZQFYELO-DO$-ZWW2UW"*[134F'.A2%M.(52M%(56A]V
M[ERS<IO6IFF[3,3$QPQ,;8F.>)?%RW1=MU6KL15;JB8F)X)B=DQ/95UWFA\"
M;_P*Y&W;#X4:XS=,9VN?E6D<IF*5)5-QBK[?KV*72=VT0[D^#2Y2(<OKT<D1
MU1IE4(3*2A-A=V->MZ[IT7JIB,[;PIN4\E7%5$?JU<,<DXQQ(#WDT.O0]0FU
M&,Y.O&JW5S<=,SRT\$\L83QN;9T;G@     /::XV)F>I,\Q'9NN[_.Q?.,%O
M]NR7&+];G/#E6Z[6N0B1&=[:T4U(CN535M]AQ*V9#*UM.)4VM2:^.8R]G-V*
M\MF*8JL5TS%43QQ/_6R>*=L/;+YB]E;]&9R]4TWJ*HF)CBF/^ML<<;%C?Y=_
M.##.>7';']KV3U&TYU:/5\9V[A$=[J[B.>18;+LWU5AUUV77&,@0KURU/KJO
MQ(ZZM*75^/(2BNV\.B7M"U&K*UXS8GPK=7ZU..SWT<%4<NW@F$_Z!K-G6\A3
MFJ,(OQLKI_5J_P )X:9Y-G#$M[#1MV                (:_M'/+U6:;8P3
MAYB=T<5CVH6(NP-HQV%UI'F[(RFT(7B5KE)ZUHXYB6#W)4E%4^YJJ_+2KJMJ
MG;,/JZTCX'*7-7NQ\9>\"CFHIGPI]]5&'O>=$GK U7X;-4:3:GXNUX5?/75'
M@Q[VF<??<R,P24CH     "8S[.#Q&KB6LMA<QLKME6KUM)^9K35CLAM-%MZ]
MQFZM.9G?(:^VM:L9)G%L1!_#1256!?H[7*5K$'K%U;X7,V]'M3X%KPZ^O5'@
MQVJ9Q]]S)9]7VE?!9:YJUV/#N^!1U8GPI[=48>]2=B,TC@
M         !$(]I*XHUL^7ZIYBXO;.VWYA';U%M5Z.VOM;R>RQ9-SU[?9=:5<
M[W;UC;$ZW.N5\-MI-HB(]TMTEOU<:KT[-W1[L^%1/PE'5G97':G"??3R(J]8
M6E]"[:U:U'@U^!7V8VTSVXQCWL<J+.2@C0     "3A[.!RV5B.U-B</LJNU4
M6':T*3LC5L64_6C$?8F*6VB<QL]O9HFM:RLKP6$F:NJE40A..=*4[W:]8T]8
MND_#96WJ]J/C+4]"OJ53X,SU:IP]_P R1O5]JGP69N:3=GP+L=.CKTQX41UJ
M=OO$Q\A]+0                  (;WM-GSZ\8_HFR[Y8-$P>K3T',^=I\E$
MOK&]-RWFJO*1D22T<@                   =8_(W_JD\7_ /UK_P#;OMLY
M3??^U\U_X_XMMU&YG]RY;_R?PJUA85_3P                      5.!:M
M5\     "4W[,-^??+_X):<_'&PB+_69\AE.O<[U"2_5Q\OF^I;[]27H1(E4
M                  #\5QN,"SV^?=KK-BVVUVN%*N-RN,Y]N-"@0(3"Y,R;
M+DO*0U'BQ8[2EN+56B4(36M:TI0^J::JZHHHB9JF<(B.&9GB?E55-%,U53$4
MQ&,SR0K4?,+Y5S^9G+;;&\%+E(Q:XWBF-:UMLE;G6TZUQ2BK3BC5([BETA2K
MO&:7=)K**U;3<;A(JFM:5ZED-W]*IT;2;62V?"Q&-<\M=6VKLX>UCFB%>->U
M.K5]4NYW;\%,X41R44[*>[[:>>9:5FY:<    'Z(<.7<)<6! BR)TZ=(8APH
M4-AV3+F2Y+J68T6+&92MZ1(D/+2A"$)JI:JTI2E:U/R9BF)JJG"F.&7[$35,
M4TQC5/!"RH\NKBC"X9\1M4:65%CLY@Q::9;M*9'<0_[Y;.RMMBX94NLIJB6Y
M<>RN>%:8CM*4[H%N8Z]5=:UKAO#JM6LZM=SN/Q./1HYJ*=E/=]M//,K#:!I<
M:1I5K)X?&X=*OGKJVU=SVL<T0W?-(W(                        5T?FX
M\3Z<1N;>SL3LEKI;=;;#?3MO5B&&E-08^+9G*EOW"P0T^[0RQB.61KC;&6^]
M2_5(S#BNGBTH6&W3U7[VT6U=KG',VX^#KY>E3P3/6IPJ[,S'$@'>K2_NK6;E
MJB,,O<\.CL5<,>]JQCL1'*YF'2N=      L#O)'Y;?\ 5#PEQ&R9!<J3-F<?
MG(VG\S2\ZW6;/LMH@MN:YR5QE*EOU8N>'^#!6^[6JY5RM4QP@+?72?NS6JZ[
M<89;,?&4\TS/AQVJMN'%%4)UW.U7[RT>BBY..9L?%U<LQ$>!/;IV8\<TR[ G
M(NK              8FWY\Q6Z?HFV-\C[R9>0].L^=H\J&+GO0KWFJ_)E5DE
MH%:0     )-WLR?SZ\G/HFQ'Y8.D:>LOT'+>=J\E(WJY]-S/FJ?*3(2'TM
M      '\)46-.C2(4V.Q+ARV'HLN)*9;D1I4:0VII^/(8=2MIYAYI=4K0JE4
MJ36M*TK2I^Q,TS%5,X3#\F(JC"=L2K\?.$\O"1P<W^N^8+:I">.^XY=SONL9
M"*.OQ\/NK2FI&1:SG2E56I"["[*H]:U/*[Y-J<13O=>C25TGW=#>&-;R'0OS
M'WA9B(K_ &HXJX[/NN2KDB805O9H,Z-GNG8C_@7IF:/V9XZ)['%RT\LQ+D*=
M:Y4     #[..Y%?L0R"R97BUWN./Y+C5VMU^Q^^VB6] NMFO5IEM3[9=+;-C
MJ0_$G0)K"'6G$5HI"TTK2O6A\7+=N];JM78BJU5$Q,3MB8G9,3'),/NW<KM7
M*;MJ9IN4S$Q,;)B8VQ,<\+#SRKO,%L//?CW"O=XE6Z#O?7#-MQS=6+Q?!CT5
M=G&7D6G/+1!;2W1G&\Z8A.R&T(11$.<W)B4[DL(==K[O1H%S0=0FBB)G(W,9
MMU<W'3,\M..'/&$\>$3UNSKM&N9"*ZYB,[;PBY'/Q51')5P\TXQQ8STZ.9=&
M            !PK\U;R<<-YE0;KNG1<:Q8#R>@0U/3D*1'L^)[H:C)35,#,'
MF(]4V_-FXZ/"@7M5.CM.R-/K5BC,B%W&ZV^%[1ZHR6>FJYIDSLXZK?/3RT\M
M/;IVXQ5Q6\VZ5G5XG.9+HV]2B-O%3<YJN2KDJ[56S"8@Z; U]F^JLRR'7FQ\
M6O6%9OB=R?M&18SD,%ZW76USXZNBVGX[R:=S;B:T6TZBJFGVE)<;4I"DJK-N
M7S%C-6:<QEJJ:[%<8Q5$XQ,?]=Q#-^Q>RMZK+YBF:+U,X3$[)B7CSV>0
M                        !T0\O'RY=P^8!LYJR8O&EXKJ'&KC%IM+;TR"
MIVS8S#4E$ERR61+JFFL@SBXQ%4]5@-JKX5'$OR5-1_=UY_>#>+)Z!ENG=F*\
MW5'@6\=M7//)3''/:C&6_P! W?S>NYGH6\:<I3/AU\4<T<M4\4=N<(6!/&_C
M;J'B?J;']+Z2QAO&,+L%7Y2J./5FWF_WN=1KWTR;)KLXE,B\Y!=5,H\5]=*)
M0VVVRTAJ.TTTB M1U+-ZKFZL[G:NE>J[41$<%-,<41R=N<9F93II^GY32\K3
MD\G3T;-/=F9X9F>.9Y>U&R(AG8P6:                          !  \^
MO^ICN+X):@^K'&2>]Q/[:L]>YY<H,WW_ +BN]2WY$.-YV#D@    ;8\"/WZ.
M%W\67'/ZX,.-5KWX'G?Y2]_#J;30_P :R?\ -6OXE*S>*TK&
M           "KUY<_O7<G?XA=T_61DI9O2?PK+?R]OR(5NU7\3S/G[GERUZ-
M@P                       !O1P X'[1Y\[LAZVPA#ECPRQ4AWK:VR)49Q
MRSX-B:Y:65J0JJ:,W'*[UVN,VFVT51R6\A;BZMQ8\E]G1Z_KN5T')3F;WA7J
MME%''55^BF/=3Q=F8B=UH6B9G7,Y&7L^#9IVUU\5-/Z:I]S''V(F8L2M#Z-U
MMQLU)A.D]2V%O'L$P*SM6JT1/\-R;,=JM<FYWR]2VF6*7'(+_<WG9DZ35":O
MRGEKZ)I6B:5[SV>S.I9NO.YNKI7[DXSR1R1')$1LB.*(3WD<EE].RM&3RM/1
ML41A'Z9GEF9VS/'++IB,L                    !5D;[^?3='TL[&^6%X+
M0Y#T&SYJCR85ISWIM[SM?E2Q.93%    !+T]F&_,3E_\+=.?B?81$GK,^7RG
M4N=^A*OJX^0S?7M]ZI*;(O26         -(?,%X589SLXXY3IW(*Q+5EL7KD
MVJLU>C^*_AF?VYAY-LF+4BE7G+'>&7%P+HQ3KXD*0M2*4?;8<;W>@:U>T/4:
M<Y;QFU/@UT_K43PQV8X:9Y8Y,6FUW1[.MZ?5E+F$78VT5?JU1P=J>"KFGEP5
MPFR=<YIJ+/LPUAL6PS,8SG \@N6,9189Z4TD6Z[VJ2N-);HXVI;$J*Y5%'&)
M#2EL26%H=:6MM:55L5ELQ9S=BC,Y>J*K%RF*J9CCB?\ K;'#$[)5^S&7O92_
M7ELQ3--ZBJ8F)XIC_K9/!,;8>)/9X@     ;_>6_SJR[@1R*LFS(%)]XUMDE
M(V+;EPF*ZGIDV$ORDN+GV^.^M$;\J\2?56=:W:J:JIQ+D53K<>7([M#O'H=G
M7M.JRU6$9FGPK=7ZM7)/[-7!5W<,8AO-W]:NZ'J$9FG&<O5X-RGEIY8_:IX:
M>YCA,K&3 \ZQ+9V%8KL3 [[!R;"\VL%KR?%[_;7/%A7:R7B(U-@3&:UHE:/%
M8>IW(6E+C:^J%I2I-:4KO?L7<M>KR]^F:;U%4TU1/#$QLE/]B]:S-FG,6*HJ
MLUTQ,3'!,3P/6GD]0             &%.1V\L4XTZ)VIOC-54KCVL,.NN32(
MGK#45Z\W!AM,>PXY#?>_PD7+)[_)BVZ+W>BLF4BG]IFZ=D;NI9ZUD;/REVN*
M>Q''/8IC&9YH8>H9VUIV2NYV]\G;HF>S/%'9F<(CGE6,;3V3E>X]E9YM?.K@
MNZ9AL7+;]F61S5575#MVR"Y2+E*;C(6M=8\&,N1X4=FE>QAA"&TTHE-*4LOE
M<M:R>6MY2Q&%FW1%,1S1&'=Y>65<LSF+N;S%>:OSC=N535,\\SCW.3DAX(]W
M@    #+V@=+Y9R*W7K#1N#M]V3[0S*RXE;Y"F'I,:U-7&4E-SR"X-,?XU;3C
M=I0_/F*3Z418SBO[#$S^=M:=DKN>O_)6J)JGGPX(CGF<(CGEE9')W=0SEO)6
M?E+E<4QS8\,SS1&,SS0LZM/ZLQ+1^K-?:@P.#2WXAK;$;'AU@C]K='E0+' 9
MA)F3%-H0E^Y7%QI4B4]6G<_)=6XKJI5:E9\WFKV=S5S-WYQO7*YJGLS..SFC
M@CDA8[*9:UDLM;REB,+5NB*8[$1AW9X9YV1S'9
M   :I\WN-EKY<<6-RZ$G(B)N.:8G*5A]PEMMK19<^L:V[YA%W\1=4+89C9);
MXZ9%4+;4Y$6\W55$N*Z[71-2JTG5+.?IQZ-%?A1RT3LJCQ9G#GPEK-9TZG5=
M,O9&K#I5T^#/)5&VF>[$8\V*LNO-GNF.WBZX_?($JU7NQW*=9[Q:YK2F)MMN
MELE.PKA EL+I1;,J'+86VXBOI2M-:5+*45TW*(N43$T51$Q,<$Q.V)5TKHJM
MUS;KB8KIF8F.28X8?-/I\@    R1IW:F6:.VKKS<."S/4LNUKE]AS*PO*4\E
MAV=8K@Q.3!G)8<:<?MER;:5&EL]U*/1G5MJ]RJICYS*VL]E;F3OQC9N433/8
MF,,8YXX8Y)9&4S-W)9JWF[$X7;=<51V8G'">:>">99XZ+W!BG(#3FM-UX._X
MV+;.PVQ9A:D*=0Z_!1=X33\JSSE-THE-SL<ZKL.6CI2K<EA::TI6G0K-GLG=
MR&<NY*_\K:KFF>?">&.:8VQS2L=DLW:SV4MYRS\E<HBJ.;&.">>)V3SPRL8K
M*                 "&][39\^O&/Z)LN^6#1,'JT]!S/G:?)1+ZQO3<MYJK
MRD9$DM'(                   '6/R-_P"J3Q?_ /6O_P!N^VSE-]_[7S7_
M (_XMMU&YG]RY;_R?PJUA85_3P                      5.!:M5\
M"4W[,-^??+_X):<_'&PB+_69\AE.O<[U"2_5Q\OF^I;[]27H1(E4
M           #AAY^/+RG'WB _I_&+HW&V/R;E3L$::9?4W/MFKX##,G95X;2
MCK3P[G&E1+%5+E$T<:N[RT5[F:].XW#TC[PU?ZY=C'+9:(JYIKGVD=K;5[V.
M5Q>_&J_4-*^J6YPS&9F:>>*(]O/;V4^^GD0/R<T)@     =N/(=XBKY%\R;9
ML[(K567K7C.Q V1=GGV$.P)NPWI+S&KK$NKB'$TE-7>'(O:?1T[;)5-:TJM/
M7BM^M6^[M'G+6YPS.9QHCEZ'NY[DQ3[YV.Y.E?>&KQF;D8Y?+85SR35[B.[C
M5[U/7()3>                         #@;[09Q0KNSB3!WMC5K];SKC/=
MG\@FJC,J7-G:KRE<&V9S&HEENJGT6";'MUX4MQ5&XL*%,4GI5Q77O-P-5^I:
MM.1N3A8S,81R173C-/=C&GGF:7#[]Z7]<TJ,[;C&_EIQ[-%6$5=S95S1$H,1
M-Z%P     .R?D<<MZ\9.:N-XGD-T]1UGR,:A:ERQ$A]35N@Y3,G4=UCDKZ*4
MHUZQ RA^ML\9U26HT*]2G%5I1/6G'[[Z3]YZ+5=MQCF<OC<IY9IP\.GMT^%S
MS3$.MW,U7[NUBFU<G#+9C"BKDBK'P)[4[.:*IE/\($3F              Q-
MOSYBMT_1-L;Y'WDR\AZ=9\[1Y4,7/>A7O-5^3*K)+0*T@     2;O9D_GUY.
M?1-B/RP=(T]9?H.6\[5Y*1O5SZ;F?-4^4F0D/I:         &LO+_BQKWF5H
M'.="[&9HU;\FA>M8[D349N3<\)S2W(=<QK,;.E:FJ^NV>8Y6CK='&Z2X;K\5
M:J-/KZ[+2-4S&CY^C/Y?VU,[8XJJ9]M3/-,=R<)X8:[5M,L:OD:\CF/:U1LG
MCIJC@JCL>S&,<:MHWWHW8?&S;^>:1VI:/>;.-?7QZS79AM2G8,UKL;E6N]VB
M2I#59MCO]JD,S83W:FKL9]"JI2JM4TL=D,]E]2REO.Y6>E8N4XQR\\3SQ.,3
MSPKUGLEF-.S=>3S487K=6$\D\DQS3&V.:6(3+8H     &W7"#F!L#A#R$Q#=
M^"K>G0X#WO/GN'UE+CV_/,"N+S-+_C4VM.K;<A3;29,"0I*Z1+C'8>[5T0I"
MM3K>D9?6]/KR5_95.VFKCIJC@F.],<<3,-KHVK7]&S]&<L;8C953Q54SPQ/?
MB>*8B5D'I/<NON0FJL&W/JN^-Y#@>P;%&OU@N*4I:D(:>JMF7;;G%HMQ5OO5
MEN#+L.=&56JXTMAQI7NDU*Z9W)YC3\U7D\U3T;]NK"8_3'+$QMB>.)B5@LGF
M[&?RM&<RU72L7*<8G]$\DQ.R8XIC!E(Q62            !SB\P+RR]"\_L0
M2C+XM,'W#8H#D7!MSX];X[N0VI%/$=8L>3PZKBMYCAU92ZKK!D.MO1U*6J)(
MC+==4YT6@;RY_0+WQ,]/)U3X5N9V3ST_JU<\</'$X0Y_7=W,CKMKXV.AFZ8\
M&Y$;8YI_6IYIX.*8VH)W,7@QR'X.Y^O"=W8BY&MD]^33#=BV*DFY:]SV%'6J
ME96-Y J-'328VWT7(MTMN-<HB5H4\PA#C:USEH^N:?K>7^&R5>-4>VHG973/
M/')R3&,3Q3PH5U;1<_HU_P"!SE&%,^UKC;35'-/?B<)CCAI\;=J0
M                  .V/EF^35MKFE,L^T]KM7S4G&5+S<EO(WXM(>9;3:15
M#BH.M[?<65I;L;J:]CN02&EP4JK5$5$QU#Z6.+WEWQRFC4SE<KT;NI\GN:.>
MN8X_V(V\N$88]CN[NCFM8F,SFNE:T[E]U7S41/%^U.SDQG'"<EI[3>L= Z[Q
MO5&GL-L^"8!B<-,*RX_9FG*--TZ4J_-G3)+C]PO%XN#O5V7.ENORY;RE./.+
M6JJJPCG,YF<_F*LUG*YN9BN<9F>]'%$1Q1&$1Q0F;*93+9'+TY7*4118IC9$
M?IXYF>.9QF>-DPQF2                            @ >?7_4QW%\$M0?
M5CC)/>XG]M6>O<\N4&;[_P!Q7>I;\B'&\[!R0    -L>!'[]'"[^++CG]<&'
M&JU[\#SO\I>_AU-IH?XUD_YJU_$I6;Q6E8P                       5>
MO+G]Z[D[_$+NGZR,E+-Z3^%9;^7M^1"MVJ_B>9\_<\N6O1L&
M           ;^\ ?+PW7S]V8WC6"0G<<UICTZ'79^W;G#<<QS#;:ZI+KD*$E
M2XZ<BS*=%ZUA6IARCBZUHX^MB-1Q]&AU_>'):#EOA;\]+,U1X%N)VU3RSR4Q
MQU3V(QG8WFA:!G-<S/P=F.CEJ9\.N>"F.2.6J>*F.S.$;5@)Q8XJ:9X<ZCLN
MFM)8Y[RXY;5JG7:[3ELS,HS+(9#;;=PRG+[PW'C5NU\G490GNHAMB.PAMB.T
MS':;:1 >J:KG-8S=6<SM6-R=D1'M:8XJ:8XHCNS.V9F9F4Z:9IF3TG*QE,G3
MA;C;,SPU3QU53QS[$1LB(B,&QQKFP                      *LC??SZ;H
M^EG8WRPO!:'(>@V?-4>3"M.>]-O>=K\J6)S*8H    )>GLPWYB<O_A;IS\3[
M"(D]9GR^4ZESOT)5]7'R&;Z]OO5)39%Z2P          C4>?MY<M=KX0_P U
M-06.CNR-:65J-NJR6R&GUK-=:6IGMC9K2D=-')>0:ZBH[)2EI4MZPTK6KB4V
MYIIR2-PMXOJM_P"Y<W5_QKM7Q<S[FN?<]BOB_:ZTS$>;\;O_ %JS]\92G_D6
MX^,B/=41[KLT<?+3U8B88Y,:(@      $EOR$?,FKJG,(?"K<U^\/6FPKR\_
MI/(+I*75G"-BW=]*I&#NNOJJB+C&?RUU<B42I+<6^*K[A7OBZZU&^_>[GUJS
M.M9.G_DVX^,B/=41[KK4<?+3U8B9$W'WA^JW8T?.5?\ 'N3\7,^YKGW/8JXN
M2KK3,3-"'$N              (G?M(W+RB6]9\+<1NC=5.5A[>W F(^JKC:4
M>N0-<8K.\+_#31U59EWD1G*U7[FW/=M*5354J^KG2-MW6;T?_KM]^NJ/8IB>
MM"+_ %@ZKLMZ1:G_ /9<[U%/?JF.K*)H2LB\     "5'[-SQ&3=<BV;S.RVU
M]\7%_6M1ZA<DHK2GY07*#%G;&R6(VM"%]]NL,Z':H\A"E-+I<9[5:=[5>V+O
M6-JW0MVM&M3MJ^,N=B)PHCMS$U3'-3/&DSU?:5TKES5[L;*? M]F8QKGM1,4
MQ//5'$EV$2I4                           @;>?EQ2KH'F=,VM8+;6)@
M/)V!,V+#=::2B%'V1;GXL':-M;JEM'?*F7&9#OCZE5553M[5TKTITI.NX>J_
M7]&C*W)QS&6GH>\G;1/:C&F.JA+?C3/J.KSFK<86,S'3]_&RN.[A5/6<.3MG
M&      3 _9N^6WO_@NRN&^57*BKE@3\G:FJ&I#K=%NXAD%P:CY]8(B%*0KP
M['E<V/<D)2EQ;BKS)56J4M4H1%ZQM)^#OV]8M1X-SP+G6B/ GMTXQ[V.5*_J
M^U7X2Q<TB[/A4>'1U9GPH[56$^^GD2C",4D@                !#>]IL^?
M7C']$V7?+!HF#U:>@YGSM/DHE]8WIN6\U5Y2,B26CD
M #K'Y&_]4GB__P"M?_MWVV<IOO\ VOFO_'_%MNHW,_N7+?\ D_A5K"PK^G@
M                     J<"U:KX     $IOV8;\^^7_ ,$M.?CC81%_K,^0
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
M5U7+]4[9GO1Q1$<41A$<27\IE,MD;%.6RE%-%BG@B._/',SQS.V>-DPQF2
M                     *LC??SZ;H^EG8WRPO!:'(>@V?-4>3"M.>]-O>=K
M\J6)S*8H    )>GLPWYB<O\ X6Z<_$^PB)/69\OE.I<[]"5?5Q\AF^O;[U24
MV1>DL          /XR([$MA^+*89DQ9++D>3&D-H>8D,/(4V\P^RXE3;K+K:
MJI4E5*I4FM:5IT/V)F)QC9,/R8B8PG;$H GG)>79)X3;[=S/7UF<:XY;HN5Q
MO.OUQ([GO?@.1K4N;?\ 5DIZE5)8;MG<J59N_MJ]:ET:35UV')63UN?O#&M9
M#X',3_[&S$17RU1P17V^"KDJV[(F$&[VZ!.CY[X:Q'_K[TS-/)3/'1VN&G]G
M9MPEQQ.P<D     !_1EYV.ZU(CNN,/L.(>9>96IIUEUI5%MNM.(JE;;C:TTJ
ME5*TK2M.M!,1,83P$3,3C'"GN^2_YD#',_2OZ+MFWEMSDCI:SP8>4.2WFD2]
ME82VM-OLFQX;-:H<D7)BOA0;]1%%I;GU:DUJA,]IEN"-\MW)T;._6LM3_P"M
MO3/1_8JX9H[''3S8Q[F93ANAO!&KY/ZMF9_]A9B.E^W3P17V>*KGPGW40[7'
M%NP           !X79^R,1T]KG.=JY[<T6?"]=XK?,QR:XJHE2X]GL%O?N,R
MD9E2VZRISS4>K<=A->]]]:&T4JI5*5]\KEKV<S%&5L1C>N5Q33'/,X1VN6>*
M-KPS.8M93+UYJ_.%FW3-4SS1&/=Y(XY5C/)/>N5<F=\[4WSFBO\ _H-G9?<L
MB=BT55;5HMBJHA8]CT5=?=*@XUCL.+;X]55JJK,9/=6M>M:V7TW(VM-R-K(6
M?D[5$1V9X9GLU3C,\\JY:CG;NHYZ[GKWM[E<SV(XH[481'880,UA@    ]3@
MV%9/LG-,2UYA5ID7W,,YR2R8EB]EB4I63=;_ )#<8UIM$!GNK1*5RITM".Y5
M:)3UZUK2E*U/*_>M9:S7F+T]&S13-54\D1&,SW'K9LW,Q>HL68Z5VNJ*8CEF
M9PB.ZLW^)W'K'.*G'34F@,7JP]!UQB,&TW"Y,,I83?LGE*=NN7Y(MM+;54N9
M%E$^7,K15.Y/C=M?P%:=5U"YJNHW<_=]M<KF8CDIX*8[5,1':6,TO(6],T^U
MD;?M;=$1,\L\-4]N9F6PYKV>                          !R1\ZKBE3E
M#P<SV38[;2=L?1E5[FP:K32E394?&H4E.=6!BK+;DE^EYPAZ8XS&12M)%QB0
MZ5IU32J>LW,U7[LUNW%<X9>_\75R>%/@SVJL-O%$RY;?#2_O+1JYHC',6?C*
M>U[:.W3CLXYB%>\3^@@     #:'A?R3OW$;DYJ+?MC7+6SA&51%Y3:XCG8K(
M<%NU%V?-L>4E5%,N+NF-39*&*N)71F51IZE.]M-::S6=-MZMIE[(5X8UT^#/
M)5&VF>U,1CRQC'&V6CZC7I6I6L]1CA15X4<M,[*H[<8X<^$K-3&LCL>88Y8,
MNQBYQ;UC64V6U9'CUYA+JY"NUCO<%BYVFYQ%J2E2XL^!*;=;K6E*U0NGH*U7
M+==FY5:NQ--RFJ8F)X8F)PF.U*Q=NY1=MTW;<Q-NJ(F)Y8F,8GMP^T?#[
M             $-[VFSY]>,?T39=\L&B8/5IZ#F?.T^2B7UC>FY;S57E(R))
M:.0                   .L?D;_ -4GB_\ ^M?_ +=]MG*;[_VOFO\ Q_Q;
M;J-S/[ERW_D_A5K"PK^G@                      J<"U:KX     $IOV8
M;\^^7_P2TY^.-A$7^LSY#*=>YWJ$E^KCY?-]2WWZDO0B1*H
M     .2WG0\NU\4.%69MXY=5V[:.[UO:AUZN*[1NX6YN_07U9ME,>J5)D1O>
M#$$24,2F^BHUSF0ZTK2M:5.KW-TC[UUJB;D8Y6Q\97R3A/@T]NK#&..F)<MO
M?JOW7H]?P<X9F]\73RQC'A3VJ<=O%,PKV2P""      .G_E"<1D\O>:NO<;O
M]K]\=8ZQ_P#Y<VDAY%?49N/XG.@^\^-25*15I]&6Y9+@0GX_<AURW+EN(K_A
M*K3F=[M6^Z-%N7+<X9F[\71RXU1.,^]IQF)Y<.5TFZFE?>NL6[=<8Y:WX=?)
MA3.R/?581AR8\BQ0*])\                            14/:3.)_KUGU
M1S)QBWH]8LBV--;55'9Z..6J<_<+UKK(956ZI1V6^YNW&VR'UT4XNLV"UUHA
MM-*2GZN-5Z-=W1[L[*OC*.S&$5QVXPF(YJIXT9>L+2\:+6KVXVQ\77V)QFB>
MU.,3V:8XD1\EA%@     $B7V=OEM^BGD?D_&3*+E2/AO(:V^O8I22ZTW&M^V
M<.A29D!E"WE-H8IEN*TF1%=*U6_-B0&DIK57HCWUA:3]:TZG4[4?'9><*N>W
M5.WQ:L)YHFJ7?;@ZI]5U"K3KD_$YB,:>:NG@\:G&.>8IA-J(63$
M   !B;?GS%;I^B;8WR/O)EY#TZSYVCRH8N>]"O>:K\F5626@5I      DW>S
M)_/KR<^B;$?E@Z1IZR_0<MYVKR4C>KGTW,^:I\I,A(?2T           "#'Y
MYOER5XO[>KR.U/8E,:%W=?93MWMUNC);MNLMJS:/W&YV!#35>R)CF9(:?N-K
MHFB6F'D2XB4M-,QJ.3?N1O%]YY3[NS=7_/L4[)GAKHC9$]FG9%7+LG;,RA??
M3=_[MS?WAE:?^#>JVQ'!17.V8[%6V8Y-L<4.!AWCAP      $WSR*O,D_P"H
MW6;7%C<.0KE;SU!8$5PR]7:1WSMFZLM:8\**MR6ZKON.7X*AQN+-[ZUD3+?X
M$NM7G$3G40IOSNY]W9G[TR=.&1O5>%$<%%<]ZFKACBB<8V1T83)N5O#]X9;[
MLS=6.=M4^#,\-=$=^JG@GCF,)V^$D)D?N\               -!N8_EJ\3^;
MULD.[9P!BU["3#<C6;;^$>!CFQ;4OP4M1:S;HPPY#RV!#HBE&X=Y8GQFDU5X
M*6EJ[Z;[1]Y-5T2J(RES'+X[;=6VB>Q'#3//3,3RXM'JV[VEZS3_ ,JWA?PV
M7*=E<=OW4<U43')@B7\P?(7Y?<=E7C*-1PV^3.L8-'I:9V!P'(FS+9 155>E
MXUB[)F7.Z/MTZ4_\B?NZETZN+;93UHF5M(W[TC4,+6;GZMF9XJI\"9YJ^"/?
M13V91=JVY&JY#&[E8^LY:..F/#B.>CAGWLU=IQ%N-NN%GGS;5=H$VUW2VRGX
M5QMMQBOPI\";&<4S)B38<E#4B+*CNHJE;:TI6A5*TK2E:';4U4UTQ71,33,8
MQ,;8F.9QM5-5%4TUQ,51.$Q.R8?C/U^                 !]O&L8R3,[]:
ML5P_'KYE>3WV6W LF.8U:9]]OUXGN]:M0K59[7'E7"X2W*)KVMLMK77IZ*'Q
M<NV[-N;MZJFBU3&,S,Q$1'+,SLA]V[=R]7%JU355<JG"(B)F9GFB-LI"7#+V
M>3?NV56C,^5E^IQ_P-ZK$RN"VWU'(-PWN$JJ7*L264.2,9P"DIA=*I<F.7">
MPNE4/6YM7II'^L^L'(93&SI5/UB_^M.,6XGRJ^UA$\53O-(W"SV:PO:G5\!8
M_5C";D_HI[>,\M*61QBX=\=.'N'4PO0.M++AD:0VU2^Y#5"KIFN6/M5JNDK*
MLON%7[Y>:I>4I;3"W:1(O?5,=EEOHBD5:GK&HZO>^&S]RJN>*."FGJTQLCL\
M,\<RE#3=)T_2;/P.1MQ1''/#55UJIVSV.".*(;-&L;$
M              ( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_\ <5WJ6_(A
MQO.P<D    #;'@1^_1PN_BRXY_7!AQJM>_ \[_*7OX=3::'^-9/^:M?Q*5F\
M5I6,                       %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0
MK=JOXGF?/W/+EKT;!@                   Z:<2?*/YJ\O'K1=L8UI+UMK
M.Y>&_7:^V69V(8L];E50KUS'+<_$=RC,D/M551ARV07X2G4=CLEFG55.:U;>
MS1=(B:+MV+F9CW%O"JK'GGVM//TIB>2)='I6ZVL:K,56[<V\M/NZ\:8PYHX:
MN;",.682S.#ODG\4^(#]IS;)H=>0.Z;?5F4QG>P+3#;QO&[BW2E?6,%U[XUQ
MM%F?:=2EQJ9/>NERCNI[V)+%*]E(IUO?35=7B;-J?J^2GW-$[9C]JO9,]B(I
MB>.)2AHVYVF:3,7KD?#YR/=51LB?V:=L1V9QF.*8=CSCW6@
M            JR-]_/INCZ6=C?+"\%H<AZ#9\U1Y,*TY[TV]YVORI8G,IB@
M   EZ>S#?F)R_P#A;IS\3["(D]9GR^4ZESOT)5]7'R&;Z]OO5)39%Z2P
M       :W<M>,.N^86A<[T/LJ(A5HRRW*79;XW':>NF&9=";=<QO,K&ISI5J
MYV*>JBJIHI*9,93L9WJR^ZE6QTG4\QI&?MY_+3X=$[8XJJ9X:9YICN3A,;8A
MK]4TW+ZMD:\CF(\"J-D\=-7%5'/$]V,8X)5M7(C0>Q.,.YL^T;M.U+M68X#?
M)%JEJ2AVD"\VY7219<FLCSR&UR[!DMI=9FPW:I2I3#R>]*5T4A-CM/S^7U/)
MV\]E9QLW*<>>)XZ9YXG9//"O>?R.8TW.5Y+,QA=HJPYICBF.:8VQS,+&8PP
M    ,X<;^0>QN+.ZL#WKJNY4M^7X'>$3V&)%7E6N^VM]"HE[QB_1V'67)=BR
M*U/.Q)3:5)71MWN;4AU*%IPM1T_+ZIDKF1S48V;D8<\3Q51SQ.V/9V,S3\_F
M-,SE&=RTX7:)QYICCB>:8V2LCN)?*#7',30V#;ZUC*_\ERR#5J\6&1(;?NV%
MY; HAG),,OM$(:JFYV*?6J:.=B$2XRF93-*L/M*57+5M,S.CY^O(9F/#HG9/
M%53/!5'-,=R<8G;$K":7J67U;(T9[+3X%4;8XZ:HX:9YXGNQA,;)ALB:YL
M         C0^T;<O?R$U!@W$'$KF\QD^XY$;/-E4BN]BHNKL8N3K=ALTNE*)
M7V9CG$&CZ:H5Z&K"ZVY3L?IUDGU=Z1\/FZ]7NQ\59CHT=>J-L^]IG#WT8<".
M_6!JOP&4HTJU/QE[PJ^I$[(]]5'^6>5#.)B1&     !(M]G:XB4VIR&RKE'E
M=MH_AO'R&FU8;27&4N+=-M9? E,,28RW$+BOUPC%%2)+J*]'6)EQM[R*TJGJ
M1YZPM7^JZ?1I=J?CLQ.-7-;IG_55A'/$50[_ '!TKZSGZM2NQ\38C"GGKJC_
M $TXSS3-,IL1"Z80                           '^'&VW6UM.H0ZTZA3
M;C;B:+;<;72J5H6A5*I6A::]*TKZ*T'!MCA.'9/ K9_,QXL.\/N9FX-2PK>N
M!A$N\JSW5?1EQJ*[K;-7I%UQZ'!6Y2E9+.,/UDV1UVGH7*MCO3_X%CMVM4C5
M]'LYN9QOQ3T:^O3LG'K;*NQ5"O6\6F?=.KW<K3&%F9Z5'4JVQW-M/9B6A9O6
MD      G,>SX\M*[LXGW'0>3W+UG.^,USC6.W4DOJ<F7/4^5.3[EA,FBGU][
MWY-W&-<;/5MI-6XD&) HJM%.II6$=_\ 2?J6JQG[486,S&,\URG"*N[&%7/,
MU<B9]Q-4^N:7.1N3\?EIPCGHJQFGN3C3S1%/*[[G!.Y                $
M-[VFSY]>,?T39=\L&B8/5IZ#F?.T^2B7UC>FY;S57E(R)):.0
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
M#(VJ:)XYX:I[-4XU3W<.1L^:QL@
M( 'GU_U,=Q?!+4'U8XR3WN)_;5GKW/+E!F^_]Q7>I;\B'&\[!R0    -L>!'
M[]'"[^++CG]<&'&JU[\#SO\ *7OX=3::'^-9/^:M?Q*5F\5I6,
M             %7KRY_>NY._Q"[I^LC)2S>D_A66_E[?D0K=JOXGF?/W/+EK
MT;!@            ][;=5;0O+ZXMGUOGMVDMM*D+CVW#\AG/H82MMM3RV8MN
M=<2TEQU*:JK3I2JJ4Z]:T/"K-96B,:[EN(YZHC]+WIRN9KG"BW<F>:F9_0S3
MC/!KFCF*T)QGB7R0N[;GX)<;2FQDVU'5A4E'CW1['6K='\5E/5'B.I\2M:43
MUK6E*X5W7-&L_*YO+1_Y*,>YCBS+>BZO>^3RN8G_ ,=>'=PP;285Y+/F79PM
MJL3C-><>AN=?$G9KF>N<01&IT=[5.V^]Y=%OCG>MKMI1J(XJE5)JJE$5[C5W
MM\]V['#F::IY*::ZO9BG#V6RL[H;Q7N#+33'+5513[$U8^PW<US[-ES"R%4:
M1L?:VBM<0'5M4?CV^Y9=G61Q6ZTI5Y2K=#QFQV!Y;=*]$I1=JT6JE>M4TZ*5
MI<QZQ](MXQE[5^Y5SQ33'=FJ9_RMSE_5[JUS;F+MBW3S355/<PB/\SHGJKV:
M'CI8%QY&XM_[9V2^SV+7"PNS8QJ^SR5TI7O:E-SZ;&NZX]:U]'@S([GHZ]WI
MZ'/9KUDZC<V9/+VK<<M4U5S['0CV);_*^KO3[>W-W[MR>2F(HCV>G/LPZPZ
M\L3@KQHF0KSJ[COA2,JM_AN1<SS--PV+ED66W6E??"UW?.9M^7CTY=:>E=L3
M#I1-:II2B:UI7E,_O-KFI4S1FLQ7\%/N:<**>Q,4Q&,=;%T^1W<T73IBO+9>
MCX6/=58UU=F)JQPGL8-]31-X                            JR-]_/IN
MCZ6=C?+"\%H<AZ#9\U1Y,*TY[TV]YVORI8G,IB@    EZ>S#?F)R_P#A;IS\
M3["(D]9GR^4ZESOT)5]7'R&;Z]OO5)39%Z2P            .%'G?>7)_P!6
MFFJ;UU58JRN0ND;++?;@6^.Z_<-F:RBUE7.\86U&CH6_-R.Q/O.W"RI312W5
MJDQ$H4N6TIKN=R=XONG.?4<U5AI]^KAG@HKX(JYHG@J[4\4X\5OEN_\ >F4^
MNY6G'/V8X(X:Z.&:>S'#3VXXXP@CDY(4       ==/*#\Q2?P8WRW9<WN4MS
MCKMZ=;++L^WUJ])9Q&Y)JN+8MG6N&FJJMR+"N1X=T2RFKDRU573L=>CQ4IY+
M>[=ZG7,AT[$1]XV8F:)_6CCHGL^YY*N2)EU6ZFOU:+GNA>F?J%V8BN/U9XJX
M[''RT\LQ"P1@SH5SA1+E;9<6X6ZX18\Z!/@R&I<*;"EM(?BRXDIA;C$F+)8<
M2MMQ"E(6A5*TK6E2 JJ:J:IIJB8JB<)B>&)3K$Q5$54S$TS&R7ZC\?H
M  !\J^WRT8S9+QDF07"+:+#CUJN%\O=UFN49A6RT6F(]/N5PENU]#46%#CK<
M<57^ZA-:GW117=KBW;B9N53$1$<<SLB.V^:ZZ+=$W+DQ%%,3,SR1&V95FO.'
MD]>N87*/;>_+IZY'MN79&]'PNSS7.YW'=?6-";1A5D4VA2H[,J/88C+DOPNC
M;L]U]WIU<K6MD]$TRC2-+M9"G#I44^%,<=<[:I[O!S80KKK.I5ZMJ5W/58]&
MNKP8Y*8V4QW.'GQEJ>;5JP    ?HAPY=PEQ8$"+(G3ITAB'"A0V'9,N9+DNI
M9C18L9E*WI$B0\M*$(0FJEJK2E*5K4_)F*8FJJ<*8X9?L1-4Q33&-4\$+*CR
MZN*,+AGQ&U1I946.SF#%IIENTID=Q#_OEL[*VV+AE2ZRFJ);EQ[*YX5IB.TI
M3N@6YCKU5UK6N&\.JU:SJUW.X_$X]&CFHIV4]WVT\\RL-H&EQI&E6LGA\;AT
MJ^>NK;5W/:QS1#=\TC<@                            $<#VC/BC38O'
M_">4^-6SQ<HT/=F\:SAZ.VGQY>K<YN,:'%ERJ]:O2$8GG#L7P4(IT:9O$MU?
MN45K21?5WJOU?/UZ7=GXJ_&-/7IC_53CVZ8A'V_^E_6,A1J=N/C;$X5=2J?]
M-6'C3*%>3,B      #HWY4_+2O#OFEK#8-VN'J.N\PD5U7M>KCB&HK>"YK,@
M,+O,MQU24M1\0R*);[RXJGNU-6];=/\ Q*TKSN].D_?&C7<O1&.8HCIT=:F)
MV>^C&GMN@W8U3[IUBW?JG#+U^!7U:L-OO9PJ[2QT*[+
M"&][39\^O&/Z)LN^6#1,'JT]!S/G:?)1+ZQO3<MYJKRD9$DM'(
M         '6/R-_ZI/%__P!:_P#V[[;.4WW_ +7S7_C_ (MMU&YG]RY;_P G
M\*M86%?T\                      %3@6K5?      E-^S#?GWR_\ @EIS
M\<;"(O\ 69\AE.O<[U"2_5Q\OF^I;[]27H1(E4                 .>_F@
M\MV>&?#C9VS[=<F86P[]$IKK4;*E]LE[8F7QY46WW&(CJGQ%XC:&)M[72M:)
M6BVU1U[EII7H-V-)G6=8M96J,<O3/3N=2GACWTX4]MH=Y-5C2-)N9FF<,Q5'
M0HZU7!/O8QJ[2MZ<<<=<6ZZM;KKJU....*JMQQQ=:J6M:U5JI:UJKUK6OIK4
ML7P;(5]X=L\+_(     ;K>7GQ5G<RN6^I=(T:D4Q6X7G\IMEW!A+W2UZUQ.B
M;OECBI#-*JA2+Q&91:H;RO<)N-PCT5Z*FEW@U2G1])NYW_NQ3T:(Y:ZME/9P
M]M/-$MQH.F5:OJMK)_\ :F<:YY**=M7=]K'/,+*RW6Z!9[? M-JA1;;:[7"B
MVZVVZ"PW&A0($)A$:'"B1F4H:CQ8L=I*&T)I1*$)I2E*4H5PJJJKJFNN9FJ9
MQF9X9F>-8>FFFBF*:8B*8C"(Y(?M/E^@
M$)7VB?B?35G)/%.2^,VRK&(<A[.J%E;D:.JD2!M;"(D*!.=?6TFD>)7*\27
MDM(KT<DRH4][JJO=TFGU>ZK]:TVO3;L_'9><:>>BK;'BU8QS1-,(=W^TOZMJ
M-.HVX^*S$>%S5TX1/C4X3SS%4H[1(3@0     )7?LVW+93$S:7#'*[DGP9E)
M.X]2)DNU[DS&40+3LC&8BG5*JJDB(W;[K%C-=J4>#<7JTK5:JTBOUC:3C3:U
MFU&V/B[G8VS15WZ9GGIA)_J]U3";ND79V3\91[$5QWJHCK2EJ$4)1
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
MJ:XXYCI5>-5C5[+<,U#;
M
M
M
M
M
M
M
M
M
M
M
M
M
2                    /__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>15
<FILENAME>rock-20221231_g2.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 rock-20221231_g2.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  ," @," @,# P,$ P,$!0@%!00$
M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_
MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04
M%!04%!04%!04%!04%!04%!04%!04%!3_P  1" "B ",# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#]2]1:Z73[
MHV*PO>B)C MPQ6,R8.T,0"0N<9(!..U>8?VW\9;#,DWA3P7JHQQ%:>(+JW8'
MU+/9L".V,"O5Z* /./AW\6K_ ,5>*+_POXB\(7WA#Q)96,.HO!-=07=M-!([
MH&AFB8[L/&RD,J'H<8->CUY7;?\ )TFI?]B;:_\ I=<5ZI0 4444 %%%% 'E
M=M_R=)J7_8FVO_I=<5ZI7E=M_P G2:E_V)MK_P"EUQ7JE !1110 4444 >5V
MW_)TFI?]B;:_^EUQ7JE>5VW_ "=)J7_8FVO_ *77%>J4 %%%% !1110!Y7;?
M\G2:E_V)MK_Z77%>J5Y7;?\ )TFI?]B;:_\ I=<5ZI0 4444 %%%% 'E=M_R
M=)J7_8FVO_I=<5ZI7B^L^*-(\(_M0"37-3M-'CU/PG#;6,E_,L"7,T=Y*SQQ
MLQ 9U61"5!SA@<5[)!<1W*;HI%D'0E6!Q0!)1244 +1110!X1\5/!,'QK^+S
M^ ?$.H7R>#[?PZFISZ78R+"+R:6XEA/FR!?,VJB<*C+]YLYSBK'A;]BCX)>"
M[6>VTCX?:=;6\SB1XWEGE!8#&?GD..,=/2MNV_Y.DU+_ +$VU_\ 2ZXKU2@"
MAIFB6NBZ;:Z?8QBULK6)8(((P-L<:@!5'L  **OT4 %%%% 'E=M_R=)J7_8F
MVO\ Z77%>J5Y7;?\G2:E_P!B;:_^EUQ7JE !1110 4444 >5VW_)TFI?]B;:
M_P#I=<5ZI7E=M_R=)J7_ &)MK_Z77%>J4 %%%% !1110!Y7;?\G2:E_V)MK_
M .EUQ7JE>5VW_)TFI?\ 8FVO_I=<5ZI0 4444 %%5]0N)+.QN;B*UEO98HV=
M+: J))F )"*6(7)Z#<0.>2.M>:M\5/&US\EE\'?$4<O4G4]4TR"/'?YH[F4Y
MZ<;<=>?4 ;;?\G2:E_V)MK_Z77%>J5Y3\/\ P_XPU3XG:GXV\5Z5IOAT3Z/!
MI-II5C?M?2A4FDE:2:3RHU5LR!=B;A\I.XUZM0 4444 %%%% !1110 4444
#?__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111555552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page - USD ($)<br> $ in Billions</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, 2022</div></th>
<th class="th"><div>Feb. 21, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="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="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">000-22462<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">GIBRALTAR INDUSTRIES, INC.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">16-1445150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">3556 Lake Shore Road<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">P.O. Box 2028<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Buffalo ,<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">NY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">14219-0228<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">716<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">826-6500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, $0.01 par value per share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">ROCK<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.2<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,786,457<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentsIncorporatedByReferenceTextBlock', window );">Documents Incorporated by Reference</a></td>
<td class="text"><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">DOCUMENTS INCORPORATED BY REFERENCE</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Portions of the Registrant&#8217;s Definitive Proxy Statement to be filed for its 2023 Annual Meeting of Stockholders</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">are incorporated by reference into Part III of this Annual Report on Form 10-K.</span></div><span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000912562<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_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentsIncorporatedByReferenceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Documents incorporated by reference.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-23<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentsIncorporatedByReferenceTextBlock</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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_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_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_IcfrAuditorAttestationFlag</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_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111480592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Audit Information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AuditInformationAbstract', window );"><strong>Audit Information [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Ernst & Young LLP<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Boston, Massachusetts<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">42<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorFirmId</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:nonemptySequenceNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorLocation</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorName</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_AuditInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Audit Information [Abstract]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_AuditInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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>18
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111342560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Operations - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">$ 1,389,966<span></span>
</td>
<td class="nump">$ 1,339,783<span></span>
</td>
<td class="nump">$ 1,032,578<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of sales</a></td>
<td class="nump">1,071,272<span></span>
</td>
<td class="nump">1,049,772<span></span>
</td>
<td class="nump">776,235<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">318,694<span></span>
</td>
<td class="nump">290,011<span></span>
</td>
<td class="nump">256,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="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general, and administrative expense</a></td>
<td class="nump">188,592<span></span>
</td>
<td class="nump">184,723<span></span>
</td>
<td class="nump">149,153<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetImpairment', window );">Intangible asset impairment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">8,300<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="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">130,102<span></span>
</td>
<td class="nump">96,988<span></span>
</td>
<td class="nump">107,190<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest expense, net</a></td>
<td class="nump">4,047<span></span>
</td>
<td class="nump">1,639<span></span>
</td>
<td class="nump">703<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherIncome', window );">Other expense (income)</a></td>
<td class="nump">14,565<span></span>
</td>
<td class="num">(4,213)<span></span>
</td>
<td class="num">(1,272)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before taxes</a></td>
<td class="nump">111,490<span></span>
</td>
<td class="nump">99,562<span></span>
</td>
<td class="nump">107,759<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">29,084<span></span>
</td>
<td class="nump">25,046<span></span>
</td>
<td class="nump">24,468<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Income from continuing operations</a></td>
<td class="nump">82,406<span></span>
</td>
<td class="nump">74,516<span></span>
</td>
<td class="nump">83,291<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToReportingEntityAbstract', window );"><strong>Discontinued operations:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax', window );">Income (loss) before taxes</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,479<span></span>
</td>
<td class="num">(16,602)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation', window );">Provision for income taxes</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">366<span></span>
</td>
<td class="nump">2,123<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity', window );">Income (loss) from discontinued operations</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,113<span></span>
</td>
<td class="num">(18,725)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 82,406<span></span>
</td>
<td class="nump">$ 75,629<span></span>
</td>
<td class="nump">$ 64,566<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net earnings per share &#8211; Basic:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare', window );">Income from continuing operations (in dollars per share)</a></td>
<td class="nump">$ 2.57<span></span>
</td>
<td class="nump">$ 2.27<span></span>
</td>
<td class="nump">$ 2.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="Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare', window );">(Loss) income from discontinued operations (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0.03<span></span>
</td>
<td class="num">(0.57)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net income (in dollars per share)</a></td>
<td class="nump">$ 2.57<span></span>
</td>
<td class="nump">$ 2.30<span></span>
</td>
<td class="nump">$ 1.98<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average shares outstanding &#8211; Basic (in shares)</a></td>
<td class="nump">32,096<span></span>
</td>
<td class="nump">32,873<span></span>
</td>
<td class="nump">32,664<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDilutedAbstract', window );"><strong>Net earnings per share &#8211; Diluted:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Income from continuing operations (in dollars per share)</a></td>
<td class="nump">$ 2.56<span></span>
</td>
<td class="nump">$ 2.25<span></span>
</td>
<td class="nump">$ 2.53<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare', window );">(Loss) income from discontinued operations (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0.04<span></span>
</td>
<td class="num">(0.57)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net income (in dollars per share)</a></td>
<td class="nump">$ 2.56<span></span>
</td>
<td class="nump">$ 2.29<span></span>
</td>
<td class="nump">$ 1.96<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average shares outstanding &#8211; Diluted (in shares)</a></td>
<td class="nump">32,192<span></span>
</td>
<td class="nump">33,054<span></span>
</td>
<td class="nump">32,918<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_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 2: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 3: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of income (loss) from a discontinued operation. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br><br>Reference 5: 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(12))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 8: 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(14))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DiscontinuedOperationTaxEffectOfDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) related to a discontinued operation. Includes, but is not limited to, tax expense (benefit) related to income (loss) from operations during the phase-out period, tax expense (benefit) related to gain (loss) on disposal, tax expense (benefit) related to gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and tax expense (benefit) related to adjustments of a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 2: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 9: 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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 2: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: 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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 10: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 12: 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 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 15: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 16: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 17: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<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 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<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 https://asc.fasb.org/extlink&amp;oid=126958026&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 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 10: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 16: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDilutedAbstract</td>
</tr>
<tr>
<td style="padding-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_GoodwillAndIntangibleAssetImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<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> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4613673-111683<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: 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.13)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 8: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 9: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<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.7-04(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 5: 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(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 https://asc.fasb.org/extlink&amp;oid=126958026&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 9: 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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 11: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 12: 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(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 13: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 14: 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 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868656-224227<br><br>Reference 15: 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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerBasicShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 5: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 7: 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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 8: 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(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 9: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 10: 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 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868656-224227<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 12: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 13: 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(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 14: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 15: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 16: 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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1278-109256<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<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 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&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 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: 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(12))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 9: 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(14))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<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 5<br> -Subparagraph (SAB Topic 5.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=120398118&amp;loc=d3e355146-122828<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 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 4: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1278-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<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 (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: 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(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of operating interest income (expense).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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.10)<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: 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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetIncomeLossAttributableToReportingEntityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAttributableToReportingEntityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<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 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: 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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue and income classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 3: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: 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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: 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 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: 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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 19: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 23: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>19
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111662048">
<tr>
<th class="tl" colspan="1" 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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Other Comprehensive Income (Loss), Net of Tax [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 82,406<span></span>
</td>
<td class="nump">$ 75,629<span></span>
</td>
<td class="nump">$ 64,566<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Other comprehensive (loss) income:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="num">(5,022)<span></span>
</td>
<td class="nump">2,512<span></span>
</td>
<td class="nump">3,301<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Adjustment to post-retirement benefit liability, net of tax</a></td>
<td class="nump">1,403<span></span>
</td>
<td class="nump">136<span></span>
</td>
<td class="num">(371)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive (loss) income</a></td>
<td class="num">(3,619)<span></span>
</td>
<td class="nump">2,648<span></span>
</td>
<td class="nump">2,930<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="nump">$ 78,787<span></span>
</td>
<td class="nump">$ 78,277<span></span>
</td>
<td class="nump">$ 67,496<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_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, 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="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(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e557-108580<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(26))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: 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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&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 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 12: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111562544">
<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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 17,608<span></span>
</td>
<td class="nump">$ 12,849<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance of $3,746 and $3,738, respectively</a></td>
<td class="nump">217,156<span></span>
</td>
<td class="nump">236,444<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">170,360<span></span>
</td>
<td class="nump">176,207<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">18,813<span></span>
</td>
<td class="nump">21,467<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">423,937<span></span>
</td>
<td class="nump">446,967<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant, and equipment, net</a></td>
<td class="nump">109,584<span></span>
</td>
<td class="nump">96,885<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease assets</a></td>
<td class="nump">26,502<span></span>
</td>
<td class="nump">18,120<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">512,363<span></span>
</td>
<td class="nump">510,942<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Acquired intangibles</a></td>
<td class="nump">137,526<span></span>
</td>
<td class="nump">141,504<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">701<span></span>
</td>
<td class="nump">483<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,210,613<span></span>
</td>
<td class="nump">1,214,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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">106,582<span></span>
</td>
<td class="nump">172,286<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses</a></td>
<td class="nump">73,721<span></span>
</td>
<td class="nump">67,993<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Billings in excess of cost</a></td>
<td class="nump">35,017<span></span>
</td>
<td class="nump">46,711<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">215,320<span></span>
</td>
<td class="nump">286,990<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt</a></td>
<td class="nump">88,762<span></span>
</td>
<td class="nump">23,781<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income taxes</a></td>
<td class="nump">47,088<span></span>
</td>
<td class="nump">40,278<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Non-current operating lease liabilities</a></td>
<td class="nump">19,041<span></span>
</td>
<td class="nump">11,390<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other non-current liabilities</a></td>
<td class="nump">18,303<span></span>
</td>
<td class="nump">27,204<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#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="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, $0.01 par value; authorized 10,000 shares; none outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.01 par value; authorized 100,000 shares; 34,060 and 33,799 shares issued and outstanding in 2022 and 2021</a></td>
<td class="nump">340<span></span>
</td>
<td class="nump">338<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">322,873<span></span>
</td>
<td class="nump">314,541<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">627,978<span></span>
</td>
<td class="nump">545,572<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive (loss) income</a></td>
<td class="num">(3,432)<span></span>
</td>
<td class="nump">187<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Cost of 3,199 and 1,107 common shares held in treasury in 2022 and 2021</a></td>
<td class="num">(125,660)<span></span>
</td>
<td class="num">(35,380)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders&#8217; equity</a></td>
<td class="nump">822,099<span></span>
</td>
<td class="nump">825,258<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">$ 1,210,613<span></span>
</td>
<td class="nump">$ 1,214,901<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_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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(30)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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(30)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: 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 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 19: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: 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 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: 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(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: 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 30<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: 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 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: 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 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 19: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 2: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&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 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<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 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<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 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of 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="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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: 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 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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(32))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: 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 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: 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 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: 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 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 19: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6904-107765<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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)(23)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<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(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount 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="Show.toggleNext( this );">+ References</a><div 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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>21
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111526592">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for credit loss</a></td>
<td class="nump">$ 3,746<span></span>
</td>
<td class="nump">$ 3,738<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized (in shares)</a></td>
<td class="nump">10,000,000<span></span>
</td>
<td class="nump">10,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.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="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">100,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">34,060,000<span></span>
</td>
<td class="nump">33,799,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">34,060,000<span></span>
</td>
<td class="nump">33,799,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockShares', window );">Treasury stock, shares (in shares)</a></td>
<td class="nump">3,199,000<span></span>
</td>
<td class="nump">1,107,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<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(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>22
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108972144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash Flows from Operating Activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 82,406<span></span>
</td>
<td class="nump">$ 75,629<span></span>
</td>
<td class="nump">$ 64,566<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity', window );">Income (loss) from discontinued operations</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,113<span></span>
</td>
<td class="num">(18,725)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Income from continuing operations</a></td>
<td class="nump">82,406<span></span>
</td>
<td class="nump">74,516<span></span>
</td>
<td class="nump">83,291<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">26,167<span></span>
</td>
<td class="nump">31,966<span></span>
</td>
<td class="nump">20,915<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetImpairment', window );">Intangible asset impairment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">8,300<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Held for sale valuation allowance</a></td>
<td class="nump">13,990<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock compensation expense</a></td>
<td class="nump">8,334<span></span>
</td>
<td class="nump">8,652<span></span>
</td>
<td class="nump">8,173<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCostsAndDiscounts', window );">Exit activity costs, non-cash</a></td>
<td class="nump">2,276<span></span>
</td>
<td class="nump">1,193<span></span>
</td>
<td class="nump">493<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Provision for deferred income taxes</a></td>
<td class="nump">6,337<span></span>
</td>
<td class="nump">2,968<span></span>
</td>
<td class="nump">3,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="Show.showAR( this, 'defref_us-gaap_OtherNoncashIncomeExpense', window );">Other, net</a></td>
<td class="nump">1,506<span></span>
</td>
<td class="nump">1,570<span></span>
</td>
<td class="nump">63<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities (excluding the effects of acquisitions):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="nump">32,754<span></span>
</td>
<td class="num">(41,887)<span></span>
</td>
<td class="nump">2,277<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">14,377<span></span>
</td>
<td class="num">(85,763)<span></span>
</td>
<td class="num">(5,719)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other current assets and other assets</a></td>
<td class="nump">2,062<span></span>
</td>
<td class="num">(426)<span></span>
</td>
<td class="nump">5,467<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(76,260)<span></span>
</td>
<td class="nump">38,367<span></span>
</td>
<td class="num">(1,160)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities', window );">Accrued expenses and other non-current liabilities</a></td>
<td class="num">(11,258)<span></span>
</td>
<td class="num">(14,384)<span></span>
</td>
<td class="num">(44,570)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations', window );">Net cash provided by operating activities of continuing operations</a></td>
<td class="nump">102,691<span></span>
</td>
<td class="nump">25,072<span></span>
</td>
<td class="nump">73,016<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations', window );">Net cash (used in) provided by operating activities of discontinued operations</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,002)<span></span>
</td>
<td class="nump">16,088<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">102,691<span></span>
</td>
<td class="nump">23,070<span></span>
</td>
<td class="nump">89,104<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash Flows from Investing Activities</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet', window );">Purchases of property, plant, and equipment, net</a></td>
<td class="num">(20,062)<span></span>
</td>
<td class="num">(17,491)<span></span>
</td>
<td class="num">(12,991)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Acquisitions, net of cash acquired</a></td>
<td class="num">(51,621)<span></span>
</td>
<td class="nump">4,143<span></span>
</td>
<td class="num">(313,686)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested', window );">Net proceeds from sale of business</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">38,062<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations', window );">Net cash (used in) provided by investing activities of continuing operations</a></td>
<td class="num">(71,683)<span></span>
</td>
<td class="nump">24,714<span></span>
</td>
<td class="num">(324,677)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations', window );">Net cash used in investing activities of discontinued operations</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(176)<span></span>
</td>
<td class="num">(2,033)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash (used in) provided by investing activities</a></td>
<td class="num">(71,683)<span></span>
</td>
<td class="nump">24,538<span></span>
</td>
<td class="num">(326,710)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash Flows from Financing Activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Long-term debt payments</a></td>
<td class="num">(138,000)<span></span>
</td>
<td class="num">(120,636)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt', window );">Proceeds from long-term debt</a></td>
<td class="nump">204,500<span></span>
</td>
<td class="nump">59,500<span></span>
</td>
<td class="nump">85,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfFinancingCosts', window );">Payment of debt issuance costs</a></td>
<td class="num">(2,013)<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="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Purchase of common stock at market prices</a></td>
<td class="num">(89,494)<span></span>
</td>
<td class="num">(6,497)<span></span>
</td>
<td class="num">(6,656)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Net proceeds from issuance of common stock</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,021<span></span>
</td>
<td class="nump">1,119<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash (used in) provided by financing activities</a></td>
<td class="num">(25,007)<span></span>
</td>
<td class="num">(66,612)<span></span>
</td>
<td class="nump">79,463<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of exchange rate changes on cash</a></td>
<td class="num">(1,242)<span></span>
</td>
<td class="num">(201)<span></span>
</td>
<td class="num">(1,166)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">4,759<span></span>
</td>
<td class="num">(19,205)<span></span>
</td>
<td class="num">(159,309)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at beginning of year</a></td>
<td class="nump">12,849<span></span>
</td>
<td class="nump">32,054<span></span>
</td>
<td class="nump">191,363<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at end of year</a></td>
<td class="nump">$ 17,608<span></span>
</td>
<td class="nump">$ 12,849<span></span>
</td>
<td class="nump">$ 32,054<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_PaymentsToAcquirePropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments to Acquire Property, Plant, and Equipment, Net</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_PaymentsToAcquirePropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69E<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495743-112612<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 4: 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 1F<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69F<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495745-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-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 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) of investing activities of discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) of operating activities of discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: 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 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4582445-111684<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillAndIntangibleAssetImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4613673-111683<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: 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.13)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 8: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 9: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in other expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) of investing activities, excluding discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, excluding discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-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 25<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: 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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherNoncashIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for loan and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromDivestitureOfBusinessesNetOfCashDivested">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents the cash inflow during the period from the sale of a component of the entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the additional capital contribution to the entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113473200">
<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>Total</div></th>
<th class="th"><div>Cumulative Effect, Period of Adoption, Adjustment</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-In Capital</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th">
<div>Retained Earnings </div>
<div>Cumulative Effect, Period of Adoption, Adjustment</div>
</th>
<th class="th"><div>Accumulated Other Comprehensive (Loss) Income</div></th>
<th class="th">
<div>Accumulated Other Comprehensive (Loss) Income </div>
<div>Cumulative Effect, Period of Adoption, Adjustment</div>
</th>
<th class="th"><div>Treasury Stock</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,192,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="nump">906,000<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2019</a></td>
<td class="nump">$ 673,964<span></span>
</td>
<td class="num">$ (291)<span></span>
</td>
<td class="nump">$ 332<span></span>
</td>
<td class="nump">$ 295,582<span></span>
</td>
<td class="nump">$ 405,668<span></span>
</td>
<td class="num">$ (291)<span></span>
</td>
<td class="num">$ (5,391)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (22,227)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">64,566<span></span>
</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">64,566<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">3,301<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,301<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Adjustment to post-retirement healthcare benefit liability, net of taxes</a></td>
<td class="num">(371)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(371)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation expense</a></td>
<td class="nump">8,173<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,173<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement', window );">Net settlement of restricted stock units, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">296,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="nump">122,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement', window );">Net settlement of restricted stock units</a></td>
<td class="num">$ (6,656)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
<td class="num">(4)<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ (6,656)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesOther', window );">Issuance of restricted stock, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised, shares</a></td>
<td class="nump">75,909<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">76,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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">$ 1,119<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,119<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,568,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="nump">1,028,000<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2020</a></td>
<td class="nump">743,805<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 336<span></span>
</td>
<td class="nump">304,870<span></span>
</td>
<td class="nump">469,943<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,461)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (28,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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">75,629<span></span>
</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">75,629<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">2,512<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,512<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Adjustment to post-retirement healthcare benefit liability, net of taxes</a></td>
<td class="nump">136<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">136<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation expense</a></td>
<td class="nump">8,652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement', window );">Net settlement of restricted stock units, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">192,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="nump">79,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement', window );">Net settlement of restricted stock units</a></td>
<td class="num">(6,497)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
<td class="num">(2)<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ (6,497)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesOther', window );">Issuance of restricted stock, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36,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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">1,021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,799,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="nump">1,107,000<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2021</a></td>
<td class="nump">825,258<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 338<span></span>
</td>
<td class="nump">314,541<span></span>
</td>
<td class="nump">545,572<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">187<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (35,380)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">82,406<span></span>
</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">82,406<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="num">(5,022)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(5,022)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Adjustment to post-retirement healthcare benefit liability, net of taxes</a></td>
<td class="nump">1,403<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,403<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation expense</a></td>
<td class="nump">8,334<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,334<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement', window );">Net settlement of restricted stock units, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">245,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="nump">95,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement', window );">Net settlement of restricted stock units</a></td>
<td class="num">(4,404)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
<td class="num">(2)<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ (4,404)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesOther', window );">Issuance of restricted stock, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Common stock repurchased under stock repurchase program (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,997,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Common stock repurchased under stock repurchase program</a></td>
<td class="num">$ (85,876)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ (85,876)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised, shares</a></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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">34,060,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="nump">3,199,000<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2022</a></td>
<td class="nump">$ 822,099<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 340<span></span>
</td>
<td class="nump">$ 322,873<span></span>
</td>
<td class="nump">$ 627,978<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (3,432)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (125,660)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock Issued During Period, Shares, Restricted Stock Award, Settlement</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock Issued During Period, Value, Restricted Stock Award, Settlement</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126964447&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 20<br> -Section 55<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11178-113907<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126961718&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: 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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of stock issued attributable to transactions classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=120397183&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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120397183&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-31)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-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_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&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 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<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(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111273392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1', window );">Minimum pension and post retirement benefit plan adjustments, net of taxes</a></td>
<td class="num">$ (449)<span></span>
</td>
<td class="nump">$ 43<span></span>
</td>
<td class="num">$ (116)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Other Comprehensive Income Minimum Pension Liability Net Adjustment Tax 1</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-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>25
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327197513312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Summary Of Significant Accounting Policies</a></td>
<td class="text">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES<div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Principles of consolidation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements include the accounts of Gibraltar Industries, Inc. and subsidiaries (the "Company"). All intercompany accounts and transactions have been eliminated in consolidation.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Use of estimates</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of the consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the amounts reported in the consolidated financial statements and accompanying notes. Actual results could differ from those estimates due to uncertainty in the current economic environment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Segment Reporting</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has four reportable segments: Renewables, Residential, Agtech and Infrastructure. In 2021, the Company's former Renewable Energy and Conservation segment was divided into two segments, Renewables and Agtech. For further disclosure regarding the Company's reportable segments, refer to Note 20 "Segment Information."</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Revenue recognition</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue is recognized when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration the Company expects to be entitled in exchange for transferring those products or services.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance obligations satisfied at a point in time and significant judgments</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue from contracts with customers is recognized when the Company transfers control of the promised product at a point in time, which is determined when the customer has legal title and the significant risks and rewards of ownership of the asset, and the Company has a present right to payment for the product.  The Company allocates the transaction price, which is generally the quoted price per terms of the contract and the consideration the Company expects to receive, to each performance obligation.  These products are generally sold with rights of return and these contracts may provide other credits or incentives, which are accounted for as variable consideration.  Sales returns, allowances, and customer incentives, including rebates, are treated as reductions to the sales transaction price and based largely on an assessment of all information (i.e., historical, current and forecasted) that is reasonably available to the Company, and estimated at contract inception and updated at the end of each reporting period as additional information becomes available.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance obligations satisfied over time and significant judgments</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For a contract to construct an asset that the customer controls as it is being created or enhanced, or a promise to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment, the Company recognizes revenue over time.  For the contracts to construct a certain asset, the Company determines that the customer controls the asset while it is being constructed.  For the contracts for products that have no alternative use and for which the Company has an enforceable right to payment, the Company identifies these products as products that are not a standard inventory item or the Company cannot readily direct the product to another customer for use without incurring a significant economic loss, or significant costs to rework the product.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company determines the transaction price for each contract based on the consideration the Company expects to receive for the promised products and services under the entire contract, which is generally the stated contract price based on an expected cost plus a margin.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the above contracts with customers with respect to which the Company satisfies a performance obligation over time, the Company recognizes revenue based on the extent of progress towards completion of the performance obligation using the cost-to-cost measure of progress.  Under the cost-to-cost measure of progress, the extent of progress toward completion is measured based on the ratio of costs incurred to date to the total estimated costs at completion of the performance obligation.  Revenues are recognized proportionally as costs are incurred.  Costs to fulfill a contract include all direct costs related to contract performance.  Selling and administrative expenses are </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">charged to operations as incurred.  Provision for loss on an uncompleted performance obligation is recognized in the period in which such loss is determined.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company regularly reviews the progress under the cost-to-cost method and any adjustments are recognized as necessary.  Changes in estimates are recognized as they become known using the cumulative catch-up basis.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also recognizes revenues from services contracts over time.  The Company recognizes revenue over time during the term of the agreement as the customer is simultaneously receiving and consuming the benefits provided throughout the Company's performance. Therefore, due to control transferring over time, the Company recognizes revenue on a straight-line basis throughout the contract period.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract assets and contract liabilities</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets primarily represents revenue recognized for performance obligations that have been satisfied but for which amounts receivable have not been billed.  These are included as current assets and included within accounts receivable on the Company's consolidated balance sheets.  Contract liabilities include payments received from customers in advance of the satisfaction of performance obligations for a contract.  The Company does not consider contract advances to be significant financing components as the intent of these payments in advance are for reasons other than providing a significant financing benefit and are customary in the Company's industry.  Unearned revenue relates to payments received in advance of performance under the contract and is recognized when the Company performs under the contract. Unearned revenue is presented within accrued expenses in the Company's consolidated balance sheets.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Costs to obtain a contract with a customer</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognizes an asset for the incremental costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year.  If the amortization period of the asset is one year or less, the Company recognizes the incremental costs of obtaining a contract as an expense when incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Cash and cash equivalents</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All highly liquid investments with a maturity of three months or less are considered cash equivalents.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounts receivable and allowance for doubtful accounts and contract assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable are composed of trade and contract receivables recorded at either the invoiced amount or costs in excess of billings, are expected to be collected within one year, and do not bear interest.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s expected loss allowance methodology for accounts receivable and costs in excess of billings (collectively "accounts receivable") is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' accounts receivables.  The Company is exposed to credit losses through sales of products and services.  Due to the short-term nature of such accounts receivable, the estimated amount of accounts receivable that may not be collected is based on aging of the accounts receivable balances.  Additionally, specific allowance amounts are established to record the appropriate provision for customers that no longer share risk characteristics similar with other accounts receivable. The Company&#8217;s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions.  Balances are written off when determined to be u</span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ncollectible </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">after all means of collection have been exhausted and the potential for recovery is considered remote.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates are used to determine the allowance. These estimates are based on assessment of anticipated payment and all other historical, current and future information that is reasonably available.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes activity recorded within the allowance for doubtful accounts and contract assets balances for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.788%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.454%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,529&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,951&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adoption of ASU 2016-13, cumulative-effect adjustment to retained earnings at January 1, 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">385&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Bad debt expense, net of recoveries</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,221&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,321&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts written off against allowance and other adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,213)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(689)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,128)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Ending balance</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,746&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,738&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,529&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Concentrations of credit risk in accounts receivable are limited to those from significant customers that are believed to be financially sound. As of December&#160;31, 2022 and 2021, the Company's most significant customer is a home improvement retailer. The</span><span style="color:#291bff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">home improvement retailer purchases from the Residential segment.  Accounts receivable as a percentage of consolidated accounts receivable from the home improvement retailer was 14% as of December&#160;31, 2022 and 2021.  Net sales to the home improvement retailer as a percentage of consolidated net sales were 14%, 13%, and 14%  during the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Inventories</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are valued at the lower of cost, determined using the first-in, first-out method, or net realizable value. Shipping and handling costs are recognized as a component of cost of sales.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Property, plant, and equipment</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant, and equipment are stated at cost and depreciated over their estimated useful lives using the straight-line method. Interest is capitalized in connection with construction of qualified assets. Expenditures that exceed an established dollar threshold and that extend the useful lives of assets are capitalized, while repair and maintenance costs are expensed as incurred. The estimated useful lives of land improvements, buildings, and building improvements are 15 to 40 years, while the estimated useful lives for machinery and equipment are 3 to 20 years.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below sets forth the depreciation expense recognized during the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,583&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,110&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,252&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Acquisition related assets and liabilities</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounting for the acquisition of a business as a purchase transaction requires an allocation of the purchase price to the assets acquired and the liabilities assumed in the transaction at their respective estimated fair values. The most complex estimations of individual fair values are those involving long-lived assets, such as property, plant, and equipment and intangible assets. The Company uses all available information to make these fair value determinations and engages independent valuation specialists to assist in the fair value determination of the acquired long-lived assets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Goodwill and other intangible assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company tests goodwill for impairment at the reporting unit level on an annual basis at October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of a reporting unit could be below its carrying value. The reporting units are at the component level, or one level below the operating segment level. Goodwill is assigned to each reporting unit as of the date the reporting unit is acquired.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company may elect to perform a qualitative assessment that considers economic, industry and company-specific factors for some or all of the Company's selected reporting units. If, after completing the assessment, it is determined that it is more likely than not that the fair value of a reporting unit is less than its carrying value, the Company proceeds to a quantitative test. The Company may also elect to perform a quantitative test instead of a qualitative test for any or all of the Company's reporting units.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The quantitative impairment test consists of comparing the fair value of a reporting unit, determined using two valuation techniques, to its carrying value. If the carrying value of the reporting unit exceeds its fair value, goodwill is </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">considered impaired, and a loss measured by the excess of the carrying value of the reporting unit over the fair value of the reporting unit must be recorded.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also tests its indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of an indefinite-lived intangible asset could be below its carrying value. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, determined using discounted cash flows on a relief-from-royalty basis, with its carrying amount.  An impairment loss would be recognized for the carrying amount in excess of its fair value.  Acquired identifiable intangible assets are recorded at cost. Identifiable intangible assets with finite useful lives are amortized over their estimated useful lives. For additional disclosure of the Company's goodwill and other intangible assets refer to Note 7 "Goodwill and Related Intangible Assets."</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Impairment of long-lived assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-lived assets, including acquired identifiable intangible assets with finite useful lives, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of those assets may not be recoverable.  In specific situations, when the Company has selected individual assets to be sold or scrapped, the Company obtains market value data for those specific assets and measures and records the impairment loss based on such data. Otherwise, the Company uses undiscounted cash flows to determine whether impairment exists and measures any impairment loss by approximating fair value using acceptable valuation techniques, including discounted cash flow models and third-party appraisals. For additional disclosure on impairment of the Company's long-lived assets refer to Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments."</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company determines if an agreement is, or contains, a lease at the inception of the agreement. At lease commencement, the Company recognizes a right-of-use asset and a lease liability for leases with terms greater than twelve months.  The initial lease liability is recognized at the present value of remaining lease payments over the lease term.  Leases with an initial term of twelve months or less are not recorded on the Company's consolidated balance sheets.  The Company recognizes lease expense for operating leases on a straight-line basis over the lease term.  The Company combines lease and non-lease components, such as common area maintenance costs, in calculating the related asset and lease liabilities for all underlying asset groups.  Operating lease cost is included in income from operations and includes short-term leases and variable lease costs which are immaterial.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Deferred charges</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred charges associated with initial costs incurred to enter into new debt arrangements are included as a component of long-term debt and are amortized as a part of interest expense over the terms of the associated debt agreements.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Advertising</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company expenses advertising and marketing costs as incurred. For the years ended December&#160;31, 2022, 2021 and 2020, advertising and marketing costs were $10.9 million, $8.0 million, and $7.2 million, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Foreign currency transactions and translation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The assets and liabilities of the Company&#8217;s foreign subsidiaries are translated into U.S. dollars at the rate of exchange in effect at the balance sheet date. Income and expense items are translated at the average exchange rates prevailing during the period.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Income taxes</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes is determined using the asset and liability approach. Under this approach, deferred income taxes represent the expected future tax consequences of temporary differences between the carrying amounts and tax basis of assets and liabilities. The Company records a valuation allowance to reduce deferred tax assets when uncertainty exists regarding their realization.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Equity-based compensation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company measures the cost of equity-based compensation based on grant date fair value and recognizes the cost over the period in which the employee is required to provide service in exchange for the award reduced by forfeitures. Equity-based compensation consists of grants of stock options, deferred stock units, common stock, restricted stock units, and performance stock units. Equity-based compensation expense is included as a component of selling, general, and administrative expenses.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recent accounting pronouncements</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company considers the applicability and impact of ASUs, and ASUs effective in or after 2022, respectively, were assessed and determined to be either not applicable, or had or are expected to have minimal impact on the Company's consolidated financial statements and related disclosures.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI https://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327197804720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Notes)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text">REVENUE<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Sales includes revenue from contracts with customers for designing, engineering, manufacturing and installation of solar racking systems; electrical balance of systems; roof and foundation ventilation products; centralized mail systems and electronic package solutions; retractable awnings; gutter guards; rain dispersion products; trims and flashings and other accessories; designing, engineering, manufacturing and installation of greenhouses; structural bearings; expansion joints; pavement sealant; elastomeric concrete; and bridge cable protection systems.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Refer to Note 20 "Segment Information" for additional information related to revenue recognized by timing of transfer of control by reportable segment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms and conditions vary by contract, although terms generally include a requirement of payment within a range from 30 to 60 days, or in certain cases, up front deposits.  In circumstances where the timing of revenue recognition differs from the timing of invoicing, the Company has determined that the Company's contracts generally do not include a significant financing component. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from sales.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 2022, the Company's remaining performance obligations are part of contracts that have an original expected duration of one year or less.  Additionally, as of December 31, 2022 and 2021, there were no assets recognized related to incremental costs of obtaining a contract with a customer as the benefits of these costs are not expected to exceed one year.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets consist of costs in excess of billings presented within accounts receivable in the Company's consolidated balance sheets. Contract liabilities consist of billings in excess of cost, classified as current liabilities, and unearned revenue, presented within accrued expenses, in the Company's consolidated balance sheets.  </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the ending and beginning balances of costs in excess of billings, billings in excess of cost and unearned revenue, respectively, as of December 31 (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:51.176%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.318%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.318%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.320%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs in excess of billings</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,732&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,437&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,915&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billings in excess of cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(35,017)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(46,711)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(34,702)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unearned revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,572)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,681)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(21,325)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue recognized during the years ended December 31, 2022, 2021, and 2020 that was in contract liabilities at the beginning of the respective periods was $44.4&#160;million, $53.0&#160;million, and $57.8&#160;million, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The decreases in costs in excess of billings and billings in excess of cost as of December 31, 2022 compared to December 31, 2021, respectively, were primarily due to decline in volume in the Renewables and Agtech segments in 2022 compared to 2021. The increase in costs in excess of billings as of December 31, 2021 compared to December 31, 2020 was primarily due to the timing of the Company's right to invoice customers for performance satisfied by the Company for significant contracts in the Renewables and Agtech segments near the end of 2021.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI https://asc.fasb.org/topic&amp;trid=49130388<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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-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 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130556-203045<br><br>Reference 4: 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 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 5: 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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130550-203045<br><br>Reference 6: 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 12<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 7: 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 12<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 8: 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 12<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 9: 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 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130558-203045<br><br>Reference 10: 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 12<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327209632608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts Receivable<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock', window );">Accounts Receivable</a></td>
<td class="text">ACCOUNTS RECEIVABLE, NET<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable at December 31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:55.938%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.014%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.015%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts receivable</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179,170&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,745&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs in excess of billings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,732&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,437&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total accounts receivables</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220,902&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240,182&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,746)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,738)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">217,156&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">236,444&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Refer to Note 3 "Revenue" concerning the Company's costs in excess of billings.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -URI https://asc.fasb.org/subtopic&amp;trid=2196772<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-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>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327198416464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text">INVENTORIES<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw material</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,187&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135,558&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work-in-process</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,944&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,523&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,256&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross inventory</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,654&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">180,672&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less reserves</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,294)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,465)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">170,360&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,207&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's gross inventory balances are reduced by reserves for excess, obsolete and slow moving inventory and estimates for determining net realizable value of the inventory that are reported on a net basis on the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Company's consolidated balance sheets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes activity recorded within the reserve for excess, obsolete and slow moving inventory for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,400&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,161&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,463&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess, obsolete and slow moving inventory expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,582&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">215&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">355&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Scrapped inventory and other adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">343&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,179&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,400&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,161&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI https://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327208838880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant, and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property, Plant, and Equipment</a></td>
<td class="text">PROPERTY, PLANT, AND EQUIPMENT<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of property, plant, and equipment at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land and land improvements</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,704&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,634&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Building and improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,416&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,526&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,843&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194,015&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,065&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,293&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, gross</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">285,028&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261,468&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(175,444)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(164,583)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">109,584&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,885&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI https://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327198611952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Acquisitions</a></td>
<td class="text">ACQUISITIONS<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">2022 Acquisitions</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 22, 2022, the Company purchased all the issued and outstanding membership interests of Quality Aluminum Products ("QAP"), a manufacturer of aluminum and steel products including soffit, fascia, trim coil, rain carrying products and aluminum siding. The results of QAP have been included in the Company's consolidated financial results since the date of acquisition within the Company's Residential segment.  The preliminary purchase consideration for the acquisition of QAP was $52.1&#160;million, which includes a preliminary working capital adjustment and certain other adjustments provided for in the membership interest purchase agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase price for the acquisition was preliminarily allocated to the assets acquired and liabilities assumed based upon their respective fair values estimated as of the date of acquisition.  The Company has commenced the process to confirm the existence, condition, and completeness of the assets acquired and liabilities assumed to establish fair value of such assets and liabilities and to determine the amount of goodwill to be recognized as of the date of acquisition.  Due to the timing of the acquisition, the Company continues to gather information supporting the acquired assets and assumed liabilities.  Accordingly, all amounts recorded are provisional.  These provisional amounts are subject to change if new information is obtained concerning facts and circumstances that existed as of the acquisition date that, if known, would have affected the measurement of the amounts recognized as of that date.  The final determination of the fair value of certain assets and liabilities will be completed within a measurement period of up to one year from the date of acquisition.  The final values may also result in changes to depreciation and amortization expense related to certain assets such as property, plant, and equipment and acquired intangible assets.  The preliminary excess consideration was recorded as goodwill and approximated $3.6&#160;million, all of which is deductible for tax purposes.  Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the domestic building products markets.  The final purchase price allocation will be completed no later than the third quarter of fiscal year 2023.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preliminary allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:85.011%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.789%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,018&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,759&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,700&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,813&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,295)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,085&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in this acquisition consisted of the following as of the date of acquisition (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:51.677%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.221%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:25.218%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,800&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,700&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">2020 Acquisitions</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2020, the Company acquired five businesses in separate transactions, described further below, two of which are included within the Company's Renewables segment, two in the Company's Agtech segment, and one in the Company's Residential segment.  The purchase consideration for each acquisition was allocated to the assets acquired and liabilities assumed based upon their respective fair values.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 31, 2020, the Company purchased all the outstanding membership interests of TerraSmart LLC and TerraTrak LLC (collectively, "TerraSmart"), a leading provider of screw-based, ground-mount solar racking technology, particularly used for solar projects installed on challenging terrain. The results of TerraSmart have been included in the Company's consolidated financial results since the date of acquisition within the Company's Renewables segment. The purchase consideration for the acquisition of TerraSmart was $223.9&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the equity purchase agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase price for the TerraSmart acquisition was allocated to the assets acquired and liabilities assumed based upon their respective fair values estimated as of the date of acquisition.  The Company has completed the process to confirm the existence, condition and completeness of assets acquired and liabilities assumed to establish fair values of the assets acquired and liabilities assumed to determine the amount of goodwill to be recognized as of the date of acquisition.  The final determination of the fair value of certain assets and liabilities was completed within a measurement period of up to one year from the date of acquisition.  The excess consideration was recorded as goodwill and approximated $141.0&#160;million, all of which is deductible for tax purposes. Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the domestic solar energy market.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The allocation of the TerraSmart purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:78.987%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.813%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,491&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,569&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,446&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,150&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,854&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,640)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140,997&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,867&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in the TerraSmart acquisition consisted of the following as of the date of acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:51.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.397%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:25.256%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,830&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,110&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 years</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,270&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less than 1 year</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,150&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 11, 2020, the Company purchased all the outstanding stock of Sunfig Corporation ("Sunfig"), a provider of software solutions that optimize solar energy investments through upstream design, performance and financial modeling, for a purchase consideration of $3.8&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the stock purchase agreement.  The results of Sunfig have been included in the Company's consolidated financial results since the date of acquisition within the Company's Renewables segment.  The excess consideration was recorded as goodwill and approximated $3.5&#160;million, all of which is deductible for tax purposes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 15, 2020, the Company purchased substantially all of the assets of Architectural Mailboxes LLC ("Architectural Mailboxes"), a complementary addition to Gibraltar's existing mail and package solutions business within the Residential segment, for a purchase consideration of $26.9&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the asset purchase agreement. The results of Architectural Mailboxes have been included in the Company's consolidated financial results since the date of acquisition within the Company's Residential segment.  The excess consideration was recorded as goodwill and approximated $7.4&#160;million, all of which is deductible for tax purposes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 13, 2020, the Company purchased substantially all of the assets of Delta Separations, LLC, a California limited liability company, and Teaching Tech, LLC, a California limited liability company (collectively, "Delta Separations") for a purchase consideration of $47.1&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the asset purchase agreement.  Delta Separations was a privately-held engineering company primarily engaged in the assembly and sale of centrifugal ethanol-based extraction systems. The results of Delta Separations have been included in the Company's consolidated financial results since the date of acquisition within the Company's Agtech segment.  The excess consideration was recorded as goodwill and approximated $32.2&#160;million, all of which is deductible for tax purposes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On January 15, 2020, the Company purchased substantially all of the assets of Thermo Energy Systems Inc. ("Thermo"), a Canadian-based, privately held provider of commercial greenhouse solutions in North America providing growing infrastructure for the plant based organic food market, for a purchase consideration of $7.3&#160;million.  The results of Thermo have been included in the Company's consolidated financial results since the date of acquisition within the Company's Agtech segment.  The excess consideration recorded as goodwill approximated $19.1&#160;million, all of which is deductible for tax purposes.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo is as follows as of the respective date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.438%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:25.362%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,377)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,740&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,066&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,528&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,381&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,576)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,161&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,102&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the respective markets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo consisted of the following as of the respective date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.438%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:26.387%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,177&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,345&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 15 years</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,480&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11 - 13 years</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,036&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less than 1 year</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,066&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition of QAP was financed primarily through borrowings under the Company's revolving credit facility. The acquisition of TerraSmart was financed through a combination of cash on hand and borrowings under the Company's revolving credit facility. The acquisitions of Sunfig, Architectural Mailboxes, Delta Separations, and Thermo were funded from cash on hand.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized costs as a component of cost of sales related to the sale of inventory at fair value as a result of allocating the purchase price of recent acquisitions. The Company also incurred certain acquisition-related costs composed of legal and consulting fees.  These costs were recognized as a component of selling, general, and administrative expenses in the consolidated statements of operations. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition-related costs consisted of the following for the years ended December 31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:53.445%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.562%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.562%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.565%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,427&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">634&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">545&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">949&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,230&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total acquisition related costs</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,972&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">949&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/topic&amp;trid=2303972<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4946-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327198611952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and Related Intangible Assets</a></td>
<td class="text">GOODWILL AND RELATED INTANGIBLE ASSETS<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Goodwill</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the years ended December&#160;31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:33.841%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.335%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192,527&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">205,452&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84,622&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,678&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">514,279&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to prior year acquisitions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,433)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,110)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,414)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">187&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,227)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188,680&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">205,452&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,132&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,678&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">510,942&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,604&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,604&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustment to prior year acquisition</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">904&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">904&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,554)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,533)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,087)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188,030&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,056&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,599&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,678&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">512,363&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill is recognized net of accumulated impairment losses of $133.2 million as of December&#160;31, 2022 and 2021, respectively.  No goodwill impairment charges were recognized by the Company during 2022 or 2021.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Annual and Interim Impairment Testing</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company tests goodwill and indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31 and at interim dates when indicators of impairment are present. In 2022, 2021 and 2020, no indicators of impairment were identified as of interim dates; therefore, no interim tests were performed.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the October 31, 2022 impairment test, the Company conducted a quantitative analysis for all eight of the Company&#8217;s reporting units. The quantitative impairment test consists of comparing the fair value of a reporting unit with its carrying value including goodwill. The fair value of each reporting unit evaluated under the quantitative test was determined using two valuation techniques: an income approach and a market approach. Each valuation approach relies on significant assumptions including a weighted average cost of capital ("WACC") based upon the capital structure of market participants in the Company&#8217;s peer groups, projected revenue growth, forecasted cash flows, and earnings multiples based on the market value of the Company and market participants within its peer groups.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the Company's annual testing for 2022, 2021 and 2020, none of the reporting units with goodwill as of the testing date had carrying values in excess of their fair values.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Acquired Intangible Assets</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Acquired intangible assets consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:45.829%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.624%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite-lived intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,500&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,700&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finite-lived intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,481&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,521&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unpatented technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,163&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,037&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,474&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,656&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,557&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,591&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,832&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,371&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,006&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,686&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,969&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">157,107&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,081&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162,472&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,668&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total acquired intangible assets</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212,607&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,081&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">215,172&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,668&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company did not recognize impairment charges related to intangible assets during the year ended December 31, 2022. During the year ended December 31, 2021, the Company recognized <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzIxOTkwMjMyNTg1MTI_cc8a4d64-9e7f-4e6b-a81a-9f0b19229b16">impairment charges</span> of $8.3&#160;million related to indefinite-lived trademark intangible assets due to a rebranding initiative that resulted in the discontinuation of certain indefinite-lived trademarks in the Company's Agtech segment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized amortization expense related to the definite-lived intangible assets. The following table summarizes amortization expense for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:59.047%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.695%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,584&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,856&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,663&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense related to acquired intangible assets for the next five years ended December&#160;31 is estimated as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:45.401%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.671%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2027</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,102&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,922&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,782&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,370&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,728&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI https://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327117659456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock', window );">Accrued Expenses</a></td>
<td class="text">ACCRUED EXPENSES<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued expenses at December&#160;31 consisted of the following (in thousands): </span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Compensation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,010&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,293&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer rebates</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,768&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_2d1782bf-442c-4339-b6ee-027a31ee3839"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_ccd48544-48b8-4ce4-885c-7cb992fa852e">Current operating lease liability</span></span></span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,620&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,239&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,440&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,310&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued warranties</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,251&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,686&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest and taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,696&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,463&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unearned revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,572&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,681&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of MSPP liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,267&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,947&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,097&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total accrued expenses</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,721&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67,993&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued expenses for insurance are primarily for general liability, workers&#8217; compensation and employee healthcare policies for which the Company is self-insured up to certain per-occurrence and aggregate limits. The amounts </span></div>accrued represent the Company's best estimates of the probable amount of claims to be paid. Differences between the amounts accrued and the amount that may be reasonably possible of payment are not material.  Accrued expenses for unearned revenue primarily relate to up-front customer deposits received on contracts for goods and services to be provided by the Company as further discussed in Note 3 "Revenue."  The current portion of Management Stock Purchase Plan liabilities ("MSPP liabilities") represents the Company's equity-based awards that are settled in cash, further described in Note 12 "Equity-Based Compensation."<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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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),20,24)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113273872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAbstract', window );"><strong>Long-Term Debt, Unclassified [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtTextBlock', window );">Debt</a></td>
<td class="text">DEBT<div style="margin-top:6pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:56.063%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.955%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit facility</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,500&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less unamortized debt issuance costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,238)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(719)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total debt</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,762&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,781&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revolving Credit Facility</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 8, 2022, the Company entered into a Credit Agreement (the "Credit Agreement"), and concurrently with entering into the Credit Agreement, the Company paid off all amounts owed under the Sixth Amended and Restated Credit Agreement dated as of January 24, 2019, and which was terminated without any prepayment penalties. The Credit Agreement provides for a revolving credit facility and letters of credit in an aggregate amount equal to $400&#160;million. The Company can request additional financing to increase the revolving credit facility to $700&#160;million or enter into a term loan of up to $300&#160;million subject to conditions set forth in the Credit Agreement.  The Credit Agreement contains two financial covenants.  As of December 31, 2022, the Company was in compliance with all financial covenants.  The Credit Agreement terminates on December 8, 2027.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest rates on the revolving credit facility under the Credit Agreement bear interest, at the Company&#8217;s option, at a rate equal to the applicable margin plus (a) a base rate, (b) a daily simple secured overnight financing rate ("SOFR") rate, (c) a term SOFR rate or (d) for certain foreign currencies, a foreign currency rate, in each case subject to a 0% floor. Through March 31, 2023, the Credit Agreement has an initial applicable margin of 0.125% for base rate loans and 1.125% for SOFR and alternative currency loans. Thereafter, the applicable margin ranges from 0.125% to 1.00% for base rate loans and from 1.125% to 2.00% for SOFR and alternative currency loans based on the Company&#8217;s Total Net Leverage Ratio, as defined in the Credit Agreement. In addition, the Credit Agreement is subject to an annual commitment fee, payable quarterly, which is initially 0.20% of the daily average undrawn balance of the revolving credit facility and, from and after April 1, 2023, ranges between 0.20% and 0.25% of the daily average undrawn balance of the revolving credit facility based on the Company&#8217;s Total Net Leverage Ratio.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the Credit Agreement are secured by the trade receivables, inventory, personal property, equipment, and general intangibles of the Company&#8217;s significant domestic subsidiaries. Capital distributions are subject to certain Total Net Leverage Ratio requirements and capped by an annual aggregate limit under the Credit Agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On January 24, 2019, the Company entered into the Sixth Amended and Restated Credit Agreement ("Senior Credit Agreement"), which amended and restated the Company&#8217;s Fifth Amended and Restated Credit Agreement dated December 9, 2015, and provided a revolving credit facility and letters of credit in an aggregate amount equal to $400 million. The Company had the ability to request additional financing to increase the revolving credit facility to $700 million or enter into a term loan of up to $300 million subject to conditions set forth in the Senior Credit Agreement.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest rates on the revolving credit facility under the Senior Credit Agreement were based on LIBOR plus an additional margin that ranges from 1.125% to 2.00%.  In addition, the revolving credit facility under the Senior Credit Agreement was subject to an undrawn commitment fee ranging between 0.15% and 0.25% based on the Total Leverage Ratio and the daily average undrawn balance. The Senior Credit Agreement terminated on December 8, 2022.</span></div><div style="margin-top:12pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Standby letters of credit of $4.5 million have been issued under the Credit Agreement to third parties on behalf of the Company as of December&#160;31, 2022. These letters of credit reduce the amount otherwise available under the revolving credit facility. The Company had $304.5 million and $369.3 million of availability under the revolving credit facility as of December 31, 2022 and 2021, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total cash paid for interest in the years ended December&#160;31 was (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:59.133%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.623%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,047&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,639&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">703&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">276&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-cash adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(679)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(345)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(345)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for interest</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,542&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,563&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">634&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr></table></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_LongTermDebtAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAbstract</td>
</tr>
<tr>
<td style="padding-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_LongTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI https://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327210641744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension and Other Postretirement Benefits<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_OtherPostretirementBenefitsAbstract', window );"><strong>Other Postretirement Benefits [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsDisclosureTextBlock', window );">Pension and Other Postretirement Benefits</a></td>
<td class="text">PENSION AND OTHER POSTRETIREMENT BENEFITS<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has a 401(k) plan which all employees of U.S. subsidiaries are eligible to participate.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company contributes to a multiemployer defined benefit pension plan under the terms of a collective-bargaining agreement that covers union-represented employees.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has an unfunded postretirement healthcare plan which provides health insurance to certain employees and their spouses upon retirement. This plan has been frozen and no additional participants will be added to the plan in the future.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total expense for all retirement plans for the years ended December&#160;31 was (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:44.075%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.449%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401(k) plan</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,580&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,196&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,403&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Multiemployer and other defined benefit and pension plans</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Postretirement healthcare plan</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">342&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">411&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">351&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total retirement plan expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,001&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,685&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,824&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's one multiemployer plan is underfunded and has a rehabilitation plan in place. The rehabilitation plan requires minimum contributions from the Company. Given the status of this plan, it is reasonably possible that future contributions to the plan will increase although the Company cannot reasonably estimate a possible range of increased contributions as of December&#160;31, 2022.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the changes in the accumulated postretirement benefit obligation related to the Company&#8217;s unfunded postretirement healthcare benefits at December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:62.976%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.495%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.496%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projected benefit obligation at January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,202&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,443&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Plan amendments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Actuarial gain</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,784)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(200)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefits paid, net of contributions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(316)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(328)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projected benefit obligation at December&#160;31</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,229&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,202&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of plan assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Under funded status</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,229)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,202)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unamortized prior service cost</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized actuarial (gain) loss</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(278)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,530&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount recognized</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,155)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,260)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts recognized in the consolidated financial statements consisted of (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.788%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.590%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.592%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued postretirement benefit liability:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">358&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long term portion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,876&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,844&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pre-tax accumulated other comprehensive loss &#8211; unamortized post-retirement healthcare costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(74)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,942)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount recognized</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,155&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,260&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The measurement date used to determine postretirement benefit obligation measures was December&#160;31.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of net periodic postretirement benefit cost charged to expense for the years ended December&#160;31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Service cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of unrecognized prior service cost</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss amortization (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">211&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">282&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">290&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assumptions used to calculate the benefit obligation:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Annual rate of increase in the per capita cost of:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Medical costs before age 65 (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Medical costs after age 65 (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prescription drug costs (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)  For 2022, it was assumed that these rates would gradually decline to 4.0% by 2075.  For 2021 and 2020, it was assumed that these rates would gradually decline to 3.8% by 2075.</span></div><div style="padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)  Actuarial losses are amortized utilizing the corridor approach. Differences between actual experience and the actuarial assumptions are reflected in (gain)/loss. If the total net (gain) or loss exceeds 10 percent of the greater of the accumulated postretirement benefit obligation or plan assets, this excess must be amortized over the average remaining service period of the active plan participants. If most of the plan participants are inactive, the amortization period is the expected future lifetime of inactive plan participants.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Expected benefit payments from the plan for the years ended December&#160;31 are as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:24.010%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.913%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.733%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Years 2028 - 2032</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected benefit payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">357&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">369&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">359&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">355&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,649&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_OtherPostretirementBenefitsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Other Postretirement Benefits [Abstract].</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_OtherPostretirementBenefitsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_PostemploymentBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for postemployment benefits, which may include supplemental unemployment benefits, obligations recognized for all types of benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement. Disclosure may also include discussion that an obligation for postemployment benefits is not accrued in accordance with regulation only because the amount cannot be reasonably estimated.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 712<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6410195&amp;loc=d3e80090-111668<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 712<br> -URI https://asc.fasb.org/topic&amp;trid=2197446<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PostemploymentBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327107316112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Income (Loss)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract', window );"><strong>Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNoteTextBlock', window );">Accumulated Other Comprehensive Income (Loss)</a></td>
<td class="text">ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS)<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The cumulative balance of each component of accumulated other comprehensive income (loss) is as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:36.473%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.180%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.671%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.672%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Pre-Tax Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Tax (Benefit) Expense</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated Other Comprehensive Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(872)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,426)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,298)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(837)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,461)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,640&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,247)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(607)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(794)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">187&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,852&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,852&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">449&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,403&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,022)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,022)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,022)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,382)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(395)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,777)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(345)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,432)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The realized adjustments relating to the Company&#8217;s minimum post retirement health care costs were reclassified from accumulated other comprehensive loss and included in other expense in the consolidated statements of operations.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-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_ComprehensiveIncomeNoteTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/topic&amp;trid=2134417<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327198692912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Share-Based Payment Arrangement, Noncash Expense [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Equity-Based Compensation</a></td>
<td class="text">EQUITY-BASED COMPENSATION<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company awards equity-based compensation to employees and directors, which is recognized in the statements of operations based on the grant-date fair value of the award. The Company uses the straight-line method for recording compensation expense over a vesting period generally up to four years with either graded or cliff vesting. Stock compensation expense recognized during the period is based on the value of the portion of equity-based awards that is ultimately expected to vest during the period reduced by the expense on unvested awards forfeited during the period. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 4, 2022, the stockholders of the Company approved the adoption of the Gibraltar Industries, Inc. Amended and Restated 2016 Stock Plan for Non-Employee Directors ("Non-Employee Directors Plan") which increases the total number of shares for issuance by the Company thereunder from 100,000 shares to 200,000 shares, allows the Company to grant awards of shares of the Company's common stock to current non-employee Directors of the Company, and permits the Directors to defer receipt of such shares pursuant to the terms of the Non-Employee Directors Plan. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 4, 2018, the shareholders of the Company approved the adoption of the Gibraltar Industries, Inc. 2018 Equity Incentive Plan (the "2018 Plan"). The 2018 Plan provides for the issuance of up to 1,000,000 shares of common stock and supplements the remaining shares available for issuance under the existing Gibraltar Industries, Inc. 2015 Equity Incentive Plan (the "2015 Plan"). The Company's 2005 Equity Incentive Plan (the "Prior Plan") was amended in 2015 to terminate issuance of further awards from the Prior Plan. Both the 2018 Plan and the 2015 Plan allow the Company to grant equity-based incentive compensation awards, in the form of non-qualified options, restricted shares, restricted stock units, performance shares, performance stock units, and stock rights to eligible participants. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2022, approximately 326,000 and 80,000 shares were available for issuance under the 2018 Plan and 2015 Plan, respectively, as incentive stock options or other stock awards, and approximately 101,000 shares were available for issuance under the Non-Employee Directors Plan as awards of shares of the Company's common stock.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized the following compensation expense in connection with awards that vested under the 2018 Plan, the 2015 Plan, the Prior Plan, and the Non-Employee Directors Plan along with the related tax benefits recognized during the years ended December 31 (in thousands):</span></div><div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:59.047%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.695%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the Prior Plan</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the 2015 Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,617&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,186&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,932&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the 2018 Plan</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,928&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,597&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,441&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the Non-Employee Directors Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">840&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">760&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stock compensation expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,334&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,652&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,173&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tax benefits recognized related to stock compensation expense</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,175&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,189&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,272&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Equity Based Awards - Settled in Stock</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the number of stock units and common stock granted during the years ended December&#160;31, along with the weighted-average grant-date fair value of each award:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:27.199%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.457%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.776%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.457%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.776%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.457%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.780%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Awards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred stock units</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,460&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">42.69&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">7,536&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">83.58&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,402&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">45.98&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Common stock</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,652&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">42.49&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">83.58&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,134&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">45.98&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">132,430&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">43.92&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">72,243&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79.28&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">81,397&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">56.81&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Performance stock units (1)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">108,464&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">47.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">62,778&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">87.84&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">160,426&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">55.98&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt;padding-left:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Company&#8217;s performance stock units (&#8220;PSUs&#8221;) represent shares granted for which the final number of shares earned depends on financial performance or market conditions.  The number of shares to be issued may vary between 0% and 200% of the number of PSUs granted depending on the relative achievement to targeted thresholds.  The Company's PSUs with a financial performance condition are based on either the Company&#8217;s return on invested capital (&#8220;ROIC&#8221;) over a one-year period performance period or other criteria such as revenue, gross profit, and operating profit thresholds over a three-year performance period.  The Company's PSUs with a market condition are based on the ranking of the Company&#8217;s total shareholder return (&#8220;TSR&#8221;) performance, on a percentile basis, over a three-year performance period compared to the S&amp;P Small Cap Industrial sector, over the same three-year performance period.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Options</span></div><div style="margin-bottom:12pt;margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No options were granted during the years ended December 31, 2022, 2021 and 2020.  The Company determines the fair value of stock options granted based on the Black-Scholes option pricing model on the date of grant, and the expected stock volatility is based on volatility of the Company&#8217;s stock price using a historical period commensurate with the expected life of the options.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2022, the Company has one grant of options outstanding.  The following table summarizes the Company's outstanding and exercisable options at December&#160;31, 2022:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:28.578%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.919%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options<br/>Outstanding</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Remaining<br/>Contractual Life<br/>(in years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options<br/>Exercisable</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$39.55</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4.26</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes information about stock option transactions:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"/><td style="width:32.478%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.953%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.953%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.953%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.955%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Remaining Contractual<br/>Life (in&#160;years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Aggregate<br/>Intrinsic&#160;Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at January&#160;1, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">117,409&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">19.91&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(75,909)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14.73&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">41,500&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">29.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(36,500)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">27.99&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4.26</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">31,650&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The aggregate intrinsic value in the preceding table represents the total pre-tax intrinsic value, based on the $45.88 per share market price of the Company&#8217;s common stock as of December&#160;31, 2022, which would have been received by the option holder had the option holder with an exercise price below the per share market price on December&#160;31, 2022, exercised the options as of that date.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Units and Common Stock</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes information about non-vested restricted stock units and performance stock units (that will convert to shares upon vesting) and common stock:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.998%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Restricted<br/>Stock<br/>Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Performance<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Deferred<br/>Stock<br/>Units (2)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">204,584&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52.90&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">363,474&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">55.44&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,472&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43.99&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,430&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43.92&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,652&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42.49&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">108,464&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,460&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42.69&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments (1)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(65,209)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">82.75&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(83,714)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.77&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(15,652)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42.49&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(145,153)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.28&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(14,582)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40.53&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(17,930)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59.62&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(50,208)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61.51&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">235,370&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">49.87&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">211,368&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,350&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.16&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt;padding-left:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Company's PSU adjustments during 2022 represents (i) 55,959 shares for which the performance condition was not achieved and the PSUs were adjusted in the first quarter of 2022 to reflect zero PSU earned as the threshold level of achievement was not met based on the Company's actual ROIC achievement level for the performance period ended December&#160;31, 2021 and (ii) 9,250 shares not earned that related to two separate PSU awards granted in 2019 and 2020 that the threshold level of achievement based on other performance criteria as defined in the respective awards over a two-year or three-year performance periods were not met for the performance periods ended December&#160;31, 2021.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2) Vested and issuable upon termination from service as a member of the Company's Board of Directors.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of the common stock, restricted stock units, and deferred stock units, as well as the performance stock units with a financial performance condition granted during the three years ended December&#160;31, 2022 was based on the Company stock price at grant date of the award. The fair value of the performance stock units with a market condition granted during the three years ended December&#160;31, 2022 were determined using a Monte Carlo simulation as of the grant date of the award. The Company granted performance units with a market condition during 2020; however, no such awards were granted in 2022 and 2021. </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the aggregate intrinsic value of options exercised and aggregate fair value of restricted stock units and restricted shares that vested during the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate intrinsic value of options exercised</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,103&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,812&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested restricted stock units</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,920&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,320&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11,851&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested common stock</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">665&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">370&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">190&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested performance stock units</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,729&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,080&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,197&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested deferred stock units</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">105&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">630&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">570&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, there was $9.3&#160;million of total unrecognized compensation cost related to non-vested restricted and performance stock units. That cost is expected to be recognized over a weighted average period of 2.3 years.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Equity Based Awards - Settled in Cash</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Management Stock Purchase Plan</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's equity-based awards that are settled in cash are the awards under the Management Stock Purchase Plan (the "MSPP") which is authorized under the Company's equity incentive plans.  The MSPP provides participants the ability to defer a portion of their compensation, convertible to unrestricted investments, restricted stock units, or a combination of both, or defer a portion of their directors&#8217; fees, convertible to restricted stock units. Employees eligible to defer a portion of their compensation also receive a company-matching award in restricted stock units equal to a percentage of their deferred compensation.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The deferrals and related company match are credited to an account that represents a share-based liability.  The portion of the account deferred to unrestricted investments is measured at fair market value of the unrestricted investments, and the portion of the account deferred to restricted stock units and company-matching restricted stock units is measured at a 200-day average of the Company stock price.  The account will be converted to and settled in cash payable to participants upon retirement or a termination of their service to the Company.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total MSPP liabilities recorded on the consolidated balance sheet as of December&#160;31, 2022 were $15.4 million, of which $2.3 million was included in current accrued expenses and $13.1 million was included in non-current liabilities.  Total MSPP liabilities recorded on the consolidated balance sheet as of December&#160;31, 2021 were $22.6 million, of which $2.9&#160;million was included in current accrued expenses and $19.7 million was included in non-current liabilities.  The value of the restricted stock units within the MSPP liability were $13.4&#160;million and $20.7&#160;million at December&#160;31, 2022 and 2021, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the number of restricted stock units credited to active participant accounts, balance of vested and unvested restricted stock units within active participant accounts, payments made with respect to restricted stock units issued under the MSPP, and MSPP expense during years ended December&#160;31:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units credited</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,365&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,475&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57,046&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units balance, vested and unvested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,644&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,892&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">231,343&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share-based liabilities paid (in thousands)</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,689&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,915&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,401&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MSPP (recovery) expense (in thousands)</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,459)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,034&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327197467808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text">FAIR VALUE MEASUREMENTS<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Depending on the nature of the asset or liability, various techniques and assumptions can be used to estimate fair value. A financial asset or liability&#8217;s classification within the hierarchy is determined based on the lowest level input that is significant to the fair value measurement as follows:</span></div><div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1 - Quoted prices in active markets for identical assets or liabilities. </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2 - Observable inputs other than quoted prices in active markets for similar assets and liabilities.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3 - Inputs that are unobservable inputs for the asset or liability.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had no financial assets or liabilities measured at fair value on a recurring basis and did not have any financial instruments for which carrying value differed from its fair value at December&#160;31, 2022 and 2021.  As of December 31, 2022, the Company had $91.0&#160;million outstanding on its revolving credit facility under its Credit Agreement.  The Company determined the carrying value of the outstanding balance on its revolving credit facility approximates fair value due to the variable market interest rate terms of the credit facility.  The Company had $24.5&#160;million outstanding on its revolving credit facility as of December 31, 2021.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s other financial instruments primarily consist of cash and cash equivalents, accounts receivable, notes receivable, and accounts payable.&#160; The carrying values for these financial instruments approximate fair value. The Company did not have any other material assets or liabilities carried at fair value and measured on a recurring basis as of December&#160;31, 2022 and 2021.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Other non-recurring fair value measurements</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recorded impairment of property, plant and equipment during the years ended December 31, 2022 and 2020, and recognized impairment charges related to certain intangible assets during the year ended December 31, 2021. The Company uses unobservable inputs, classified as Level 3 inputs, in determining the fair value of these assets. See Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments" for more disclosure regarding the impairment of certain intangible assets and property, plant, and equipment, respectively.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also applied fair value principles for the goodwill impairment tests performed during 2022, 2021, and 2020. The Company used two valuation models to estimate the fair values of its reporting units, both of which primarily use Level 3 inputs. See Note 7 "Goodwill and Related Intangible Assets" of the consolidated financial statements for the results of the Company&#8217;s goodwill impairment tests.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, the Company's recent acquisition activity, as described in Note 6 "Acquisitions," used Level 3 inputs to estimate fair values allocated to the assets acquired and liabilities assumed.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327117547968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued Operations<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract', window );"><strong>Discontinued Operations and Disposal Groups [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock', window );">DISCONTINUED OPERATIONS</a></td>
<td class="text">HELD FOR SALE AND DISCONTINUED OPERATIONS<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Held for Sale</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the first quarter of 2022, the Company committed to a plan to sell its Processing business (the "disposal group") which is a business within the Company's Agtech reportable segment. The planned sale does not meet the criteria to be classified as a discontinued operation.  As a result, the Company will continue reporting the operating results of the disposal group in the Company's consolidated operating results from continuing operations until the sale of the business is completed.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company classifies assets and related liabilities as held for sale when: (i) management has committed to a plan to sell the assets, (ii) the net assets are available for immediate sale, (iii) there is an active program to locate a buyer and (iv) the sale and transfer of the net assets is probable within one year. Assets and liabilities held for sale are presented in prepaid expenses and other current assets and accrued expenses on the Company's consolidated balance sheets with a valuation allowance to recognize the net carrying amount at the lower of cost or fair value, less costs to sell.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 2022, the assets and liabilities of the disposal group have been classified as held for sale. The following table summarizes these assets and liabilities which have been measured at the lower of (i) the carrying value when classified as held for sale and (ii) the fair value of the business less costs to sell.</span></div><div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.854%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets held for sale</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net of allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">266&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories, net of reserves</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,748&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,999&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,213&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,990)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets held for sale</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,062&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities held for sale</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">733&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,159&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities held for sale</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,962&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales, operating loss and valuation allowance recorded for this disposal group for the years ended December 31 are as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.361%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:10.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.159%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,840&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,328&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating loss</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,769)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,539)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,990)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Effective with the classification of the disposal group as held for sale, depreciation of property, plant, and equipment and amortization of finite-lived intangible assets and right-of-use assets are not recorded while these assets are classified as held for sale. As a result of the Company's evaluation of the recoverability of the carrying value of the assets and liabilities held for sale relative to an estimated sales price, adjusted for costs to sell, a valuation allowance of $14.0&#160;million was recorded during the twelve months ended December 31, 2022 and has been presented within other expense (income) in the consolidated statements of operations. The recoverability of the disposal group will be evaluated each reporting period until the sale of the business is completed.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Discontinued Operations</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 23, 2021, the Company sold the stock of its Industrial business which had been classified as held for sale and reported as a discontinued operation in the Company&#8217;s consolidated financial statements for the years ended December 31, 2021 and 2020.  Net proceeds of $38&#160;million, consisting of cash and a $13&#160;million seller note, resulted in an estimated pre-tax loss of $30&#160;million, subject to working capital and other adjustments, of which $29.6&#160;million was recorded when the assets of the Industrial business were written down to fair market value during the fourth quarter of 2020.  The seller note was paid in full to the Company during the second quarter of 2021.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The results of operations of the Industrial business have been presented as a discontinued operation in the Company's consolidated financial statements for all periods presented.  The Company allocates interest to its discontinued operations in accordance with ASC Subtopic 205-20, &#8220;Presentation of Financial Statements &#8211; Discontinued Operations.&#8221; Interest was allocated based on the amount of net assets held by the discontinued operation in comparison to consolidated net assets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the income (loss) from discontinued operations before taxes, including the interest allocated to discontinued operations, for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.800%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.961%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,391&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128,915&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,493&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,822&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss and adjustments to loss on disposal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,419&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,600&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense allocation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations before taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,479&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,602)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 30, 2020,  the Company sold its self-guided apartment tour application business to a third party from its Residential segment.  The $2.0&#160;million net proceeds from the sale resulted in pre-tax net gain of $1.9&#160;million and has been presented within other expense (income) in the consolidated statements of operations.  This divestiture did not meet the criteria to be reported as a discontinued operation nor did it have a major effect on the Company's operations.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract</td>
</tr>
<tr>
<td style="padding-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_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI https://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=2122178<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111691168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Exit Activity Costs and Asset Impairments<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesAbstract', window );"><strong>Restructuring and Related Activities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock', window );">Exit Activity Costs and Asset Impairments</a></td>
<td class="text">EXIT ACTIVITY COSTS AND ASSET IMPAIRMENTS<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has incurred exit activity costs and asset impairment charges as a result of its 80/20 simplification and portfolio management initiatives. These initiatives have resulted in the identification of low-volume, low margin, internally-produced products which have been or will be outsourced or discontinued, the simplification of processes, in the sale and exiting of less profitable businesses or products lines, and the reduction in the Company's manufacturing footprint.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exit activity costs were incurred during 2022 related to moving and closing costs, severance and contract terminations, along with asset impairment charges related to the write-down of inventory and impairment of machinery and equipment associated with discontinued product lines, as a result of process simplification initiatives.  In conjunction with these initiatives, in 2022, the Company exited a facility, relocating to a new one, and separately, closed two other facilities.  In 2021, the Company closed four facilities.  In 2020, the Company closed two facilities and, separately, sold a facility closed in 2017.  These closures resulted in exit activity costs and asset impairment charges.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the exit activity costs (recoveries) and asset impairment charges incurred by segment during the years ended December&#160;31 related to the restructuring activities described above (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.256%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:6.366%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs (recoveries)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,256&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,198&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,454&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,769&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,193&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,962&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,825&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,837&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">393&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">393&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">731&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">740&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">771&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,066&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,837&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,687&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,687&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">860&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">932&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(63)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(63)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">375&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">375&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,039&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,276&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,315&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,020&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,193&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,213&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,207&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">81&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,288&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides a summary of where the above exit activity costs and asset impairments are recorded in the consolidated statements of operations for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,258&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,176&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,059&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,229&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total exit activity costs and asset impairments</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,315&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,213&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,288&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table reconciles the beginning and ending liability for exit activity costs relating to the Company&#8217;s facility consolidation efforts (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,030&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exit activity costs recognized</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,039&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,020&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,894)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,778)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December&#160;31</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,417&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_RestructuringAndRelatedActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_RestructuringAndRelatedActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for restructuring and related activities. Description of restructuring activities such as exit and disposal activities, include facts and circumstances leading to the plan, the expected plan completion date, the major types of costs associated with the plan activities, total expected costs, the accrual balance at the end of the period, and the periods over which the remaining accrual will be settled.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(e))<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -URI https://asc.fasb.org/topic&amp;trid=2175745<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327112635920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text">INCOME TAXES<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax basis. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to reverse.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of income before taxes from continuing operations consisted of the following for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Domestic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">112,635&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,155&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,930&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,145)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,407&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,171)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before taxes from continuing operations</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,490&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99,562&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107,759&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from continuing operations for the years ended December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,014&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,137&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,505&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,647&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,009&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,071&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">932&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,747&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,078&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,682&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,259&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,766&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,620&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,381&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">672&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(303)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,068&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(506)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,337&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,968&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,786&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,084&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,046&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,468&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from discontinued operations for the years ended December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">362&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,345&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">214&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,725&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,127&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(340)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(876)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(138)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(349)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,004)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">366&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,123&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from continuing operations differs from the federal statutory rate of 21% due to the following for the years ended December 31 (in thousands, except for percentages) :</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:31.792%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.325%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.325%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.331%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Statutory rate</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,413&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,908&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,629&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State taxes, less federal effect</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,541&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,068&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,650&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal tax credits</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(549)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(587)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,064)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.0)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess tax benefit on stock based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(214)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,039)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2.0)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,674)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">960&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,781&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,114&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(130)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(67)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">915&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(57)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,084&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.1&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,046&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.2&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,468&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22.7&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax liabilities at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,570&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,633&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,132&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,265&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,706&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,657&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,133&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,298&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross deferred tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,541&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,853&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital loss carryforward</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,490)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,328)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Equity compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,993)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,236)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets held for sale</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,669)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capitalized research and development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,503)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(17,493)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,641)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross deferred tax assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68,148)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(51,205)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowances</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,581&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax assets, net of valuation allowances</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41,660)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(24,624)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,881&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,229&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2022, the Company had total net operating loss carry forwards of $7.9 million, which included $0.4 million for federal, $6.6 million for state, and $0.9 million for foreign income tax purposes. The federal and state net operating loss carry forwards expire between 2023 and 2042. The foreign net operating loss carry forwards expire between 2023 and 2031. The Company recognized a total of $0.7 million of deferred tax assets, net of the federal tax benefit, related to these net operating losses prior to any valuation allowances, which included $0.1 million of federal and $0.4 million of state deferred tax assets and $0.2&#160;million of foreign deferred tax assets.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the sale of the Industrial business during 2021, the Company generated a capital loss of $113.7&#160;million for federal and state purposes to the extent allowable under state tax regulations. Amended Federal returns were filed to carry back $3.7&#160;million of capital loss. As of December 31, 2022, the remaining capital loss carry forward is $110.0&#160;million. The capital loss carryforward will expire in 2026.  The Company recognized a total of $26.5&#160;million of deferred tax assets, net of the federal benefit, related to this carryforward prior to any valuation allowances, which included $22.2&#160;million of federal and $4.3&#160;million of state deferred tax assets. The Company has a full valuation allowance on the capital loss carry forward and as a result there is no deferred tax asset.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred taxes include net deferred tax assets relating to certain state and foreign tax jurisdictions. A reduction of the carrying amount of deferred tax assets by a valuation allowance is required if it is more likely than not that such assets will not be realized. In 2020, the valuation allowance in China was reversed and a tax attribute valuation allowance was also reversed as the Company expects to utilize the attribute.  In 2021, a valuation allowance was recorded on federal and state capital loss carry forwards which are not expected to be utilized before expiration. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following sets forth a reconciliation of the beginning and ending amount of the Company&#8217;s valuation allowance (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,581&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost charged to the tax provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reductions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(103)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(248)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassification from discontinued operations upon sale of industrial group</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December&#160;31</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,488&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,581&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company made net payments for income taxes for the following amounts for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"/><td style="width:54.077%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.249%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.539%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.249%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.539%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.547%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments made for income taxes, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,017&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,076&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,351&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December 31, 2022, the Company had approximately $2.2 million of undistributed earnings of foreign subsidiaries.  The Company continues to maintain its assertion that all remaining foreign earnings will be indefinitely reinvested.  Any excess earnings could be used to grow the Company's foreign operations through launches of new capital projects or additional acquisitions. Determination of the amount of unrecognized deferred U.S. income tax liability related to the Company's remaining unremitted foreign earnings is not practicable due to the complexities associated with its hypothetical calculation.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, 2021 and 2020, the Company did not have any unrecognized tax benefits and no activity related to such benefits has occurred in any of the years presented in the consolidated financial statements. The Company classifies accrued interest and penalties related to unrecognized tax benefits in income tax expense.  No interest or penalties have been recognized during the years ended December 31, 2022, 2021 or 2020.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company and its U.S. subsidiaries file a U.S. federal consolidated income tax return. Foreign and U.S. state jurisdictions have statute of limitations generally ranging from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ0NzE_d000bffc-7cbf-4586-bee5-b23ff0114e19">four</span> to ten years. The Company is currently in appeals for an audit of tax years 2016 through 2019 in Massachusetts and believes the technical merits of the position will be sustained.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income 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="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 21<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32857-109319<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 S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330215-122817<br><br>Reference 3: 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 17<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: 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 14<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI https://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: 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)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327112635920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per Share<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings per Share</a></td>
<td class="text">EARNINGS PER SHARE<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic earnings per share is based on the weighted average number of common shares outstanding. Diluted earnings per share is based on the weighted average number of common shares outstanding, as well as dilutive common shares which include shares issuable pursuant to equity based incentive compensation awards under the equity compensation plans described in Note 12 "Equity-Based Compensation" of the consolidated financial statements.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Weighted average shares outstanding for basic and diluted earnings were as follows for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,406&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,516&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,291&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,113&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,725)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income available to common shareholders</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,406&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,629&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,566&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for basic earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,096&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,873&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,664&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for diluted earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common stock options and stock units</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">181&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">254&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares and conversions</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,192&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,054&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,918&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted average number of diluted shares does not include potential anti-dilutive common shares issuable pursuant to equity based incentive compensation awards.  The treasury stock method is used to calculate dilutive shares, which reduces the gross number of dilutive shares by the number of shares purchasable from the proceeds of the options assumed to be exercised and the unrecognized expense related to the options, restricted shares, restricted stock units, and performance stock units assumed to have vested.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the potential anti-dilutive common stock options and stock units for the years ended December 31 (in thousands): </span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Common stock options and stock units</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">43&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<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 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI https://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: 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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327197535248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text">LEASES <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's leases are classified as operating leases and consist of manufacturing facilities, distribution centers, office space, vehicles and equipment.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Most of the Company's leases include one or more options to renew, with renewal terms that can extend the respective lease term from one month to fifteen years. The exercise of lease renewal options is at the Company's sole discretion.  As of December&#160;31, 2022 and 2021, the Company's renewal options are not part of the Company's operating lease assets and operating lease liabilities.  Certain leases also include options to purchase at fair value the underlying leased asset at the Company's sole discretion.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts recognized in the Company's consolidated balance sheet at December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:14.250%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:52.116%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.250%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.254%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,502&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,120&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,620&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,239&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,041&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,390&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,661&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,629&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease costs for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:65.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.576%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,191&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,977&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,005&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,694&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,153&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">996&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,885&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,130&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,001&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to the Company's operating right-of-use assets and related operating lease liabilities for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:65.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.576%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of operating liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,835&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,431&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,502&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for new lease liabilities</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,008&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,084&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to the Company's lease terms and discount rates as of December 31 were as follows:</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.467%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.332%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.335%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term - operating leases</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.3</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.0</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate - operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.2</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The future maturity of the Company's lease liabilities as of December&#160;31, 2022 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:77.339%"><tr><td style="width:1.0%"/><td style="width:85.100%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.700%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,734&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,884&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,850&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,444&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,817&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">After 2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,740&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: present value discount</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,079)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of lease liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,661&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company uses the its incremental borrowing rate based on information available at the commencement date of a lease in determining the present value of lease payments as the rates implicit in most of the Company's leases are not readily determinable.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111670960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text">COMMITMENTS AND CONTINGENCIESThe Company is a party to certain claims and legal actions generally incidental to its business. Management does not believe that the outcome of any claims, or other claims which are not clearly determinable at the present time, would result in a material adverse effect on the Company's financial condition or results of operations.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI https://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI https://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327197514608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationRevenueAbstract', window );"><strong>Segment Reporting Information, Revenue for Reportable Segment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Information</a></td>
<td class="text">SEGMENT INFORMATION<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is organized into four reportable segments on the basis of the production processes, products and services provided by each segment, identified as follows:</span></div><div style="margin-top:6pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(i)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.12pt">Renewables, which primarily includes designing, engineering, manufacturing and installation of solar racking and electrical balance of systems;</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(ii)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.9pt">Residential, which primarily includes roof and foundation ventilation products, centralized mail systems and electronic package solutions, retractable awnings and gutter guards, and rain dispersion products, trims and flashings and other accessories;</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(iii)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4.68pt">Agtech, which provides growing solutions including the designing, engineering, manufacturing and installation of greenhouses; and</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(iv)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4.12pt">Infrastructure, which primarily includes structural bearings, expansion joints and pavement sealant for bridges, airport runways and roadways, elastomeric concrete, and bridge cable protection systems.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When determining the reportable segments, the Company aggregated operating segments based on their similar economic and operating characteristics.  During the first quarter of 2021, the Company reassessed its reportable segments.  As a result, the Company's former Renewable Energy and Conservation segment was divided into two reportable segments: Renewables and Agtech.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables illustrate certain measurements used by management to assess the performance of the segments described above as of and for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">377,567&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">432,096&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">238,107&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">767,248&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">635,505&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">522,814&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,868&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,161&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,460&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,283&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,021&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,197&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total consolidated net sales</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,389,966&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339,783&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032,578&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from operations:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,243&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,158&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,105&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,458&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,821&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">94,430&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,914&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(931)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,633&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,003&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,911&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,233&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segments income from operations</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,618&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">133,959&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">142,401&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(33,516)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(36,971)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(35,211)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income from operations</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130,102&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,988&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107,190&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and Amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,467&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,682&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,377&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,983&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,694&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,110&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,377&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,279&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,068&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,150&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,092&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,060&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,190&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">219&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,167&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,966&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,915&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">392,368&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">445,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">402,797&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">519,567&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">453,469&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">407,132&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">193,966&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212,038&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">216,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80,264&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,662&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80,796&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,246&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets of discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,438&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,210,613&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,214,901&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,212,494&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,589&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,268&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">423&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,050&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,182&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,313&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,177&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,289&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">720&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,898&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,097&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenditures</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,424&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,869&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,101&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,138&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,705&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,068&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables illustrate revenue disaggregated by timing of transfer of control to the customer for the years ended December 31 (in thousands): </span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.099%"><tr><td style="width:1.0%"/><td style="width:20.211%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.846%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.995%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.375%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.995%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.998%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,317&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">761,576&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,983&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">834,887&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">350,250&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,672&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,857&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,300&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">555,079&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">377,567&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">767,248&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,868&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,283&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,389,966&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="27" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,630&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">630,494&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,157&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,512&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">711,793&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">403,466&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,011&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179,004&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,509&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">627,990&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">432,096&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">635,505&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,161&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,021&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339,783&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,833&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">518,281&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,894&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,781&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">616,789&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">215,274&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,533&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,566&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,416&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">415,789&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">238,107&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">522,814&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,460&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,197&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032,578&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales by region or origin and long-lived assets by region of domicile for the years ended and as of December&#160;31 are as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North America</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,373,907&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,318,795&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,018,406&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asia</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,059&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,988&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,172&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,389,966&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339,783&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032,578&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-lived assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North America</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,553&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97,003&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,685&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asia</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">234&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">365&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">476&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,787&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97,368&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,161&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="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 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<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 34<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8981-108599<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 21<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8721-108599<br><br>Reference 4: 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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: 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 (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 7: 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 26<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8844-108599<br><br>Reference 8: 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 41<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 11: 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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 12: 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 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8657-108599<br><br>Reference 13: 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 21<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8721-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI https://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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>45
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111322320">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Principles of consolidation</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Principles of consolidation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements include the accounts of Gibraltar Industries, Inc. and subsidiaries (the "Company"). All intercompany accounts and transactions have been eliminated in consolidation.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of estimates</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Use of estimates</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of the consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the amounts reported in the consolidated financial statements and accompanying notes. Actual results could differ from those estimates due to uncertainty in the current economic environment.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingPolicyPolicyTextBlock', window );">Segment Reporting</a></td>
<td class="text">Segment ReportingThe Company has four reportable segments: Renewables, Residential, Agtech and Infrastructure. In 2021, the Company's former Renewable Energy and Conservation segment was divided into two segments, Renewables and Agtech.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue recognition</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Revenue recognition</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue is recognized when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration the Company expects to be entitled in exchange for transferring those products or services.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance obligations satisfied at a point in time and significant judgments</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue from contracts with customers is recognized when the Company transfers control of the promised product at a point in time, which is determined when the customer has legal title and the significant risks and rewards of ownership of the asset, and the Company has a present right to payment for the product.  The Company allocates the transaction price, which is generally the quoted price per terms of the contract and the consideration the Company expects to receive, to each performance obligation.  These products are generally sold with rights of return and these contracts may provide other credits or incentives, which are accounted for as variable consideration.  Sales returns, allowances, and customer incentives, including rebates, are treated as reductions to the sales transaction price and based largely on an assessment of all information (i.e., historical, current and forecasted) that is reasonably available to the Company, and estimated at contract inception and updated at the end of each reporting period as additional information becomes available.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance obligations satisfied over time and significant judgments</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For a contract to construct an asset that the customer controls as it is being created or enhanced, or a promise to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment, the Company recognizes revenue over time.  For the contracts to construct a certain asset, the Company determines that the customer controls the asset while it is being constructed.  For the contracts for products that have no alternative use and for which the Company has an enforceable right to payment, the Company identifies these products as products that are not a standard inventory item or the Company cannot readily direct the product to another customer for use without incurring a significant economic loss, or significant costs to rework the product.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company determines the transaction price for each contract based on the consideration the Company expects to receive for the promised products and services under the entire contract, which is generally the stated contract price based on an expected cost plus a margin.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the above contracts with customers with respect to which the Company satisfies a performance obligation over time, the Company recognizes revenue based on the extent of progress towards completion of the performance obligation using the cost-to-cost measure of progress.  Under the cost-to-cost measure of progress, the extent of progress toward completion is measured based on the ratio of costs incurred to date to the total estimated costs at completion of the performance obligation.  Revenues are recognized proportionally as costs are incurred.  Costs to fulfill a contract include all direct costs related to contract performance.  Selling and administrative expenses are </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">charged to operations as incurred.  Provision for loss on an uncompleted performance obligation is recognized in the period in which such loss is determined.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company regularly reviews the progress under the cost-to-cost method and any adjustments are recognized as necessary.  Changes in estimates are recognized as they become known using the cumulative catch-up basis.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also recognizes revenues from services contracts over time.  The Company recognizes revenue over time during the term of the agreement as the customer is simultaneously receiving and consuming the benefits provided throughout the Company's performance. Therefore, due to control transferring over time, the Company recognizes revenue on a straight-line basis throughout the contract period.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract assets and contract liabilities</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets primarily represents revenue recognized for performance obligations that have been satisfied but for which amounts receivable have not been billed.  These are included as current assets and included within accounts receivable on the Company's consolidated balance sheets.  Contract liabilities include payments received from customers in advance of the satisfaction of performance obligations for a contract.  The Company does not consider contract advances to be significant financing components as the intent of these payments in advance are for reasons other than providing a significant financing benefit and are customary in the Company's industry.  Unearned revenue relates to payments received in advance of performance under the contract and is recognized when the Company performs under the contract. Unearned revenue is presented within accrued expenses in the Company's consolidated balance sheets.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Costs to obtain a contract with a customer</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognizes an asset for the incremental costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year.  If the amortization period of the asset is one year or less, the Company recognizes the incremental costs of obtaining a contract as an expense when incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and cash equivalents</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Cash and cash equivalents</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All highly liquid investments with a maturity of three months or less are considered cash equivalents.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TradeAndOtherAccountsReceivablePolicy', window );">Accounts receivable and allowance for doubtful accounts and contract assets</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounts receivable and allowance for doubtful accounts and contract assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable are composed of trade and contract receivables recorded at either the invoiced amount or costs in excess of billings, are expected to be collected within one year, and do not bear interest.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s expected loss allowance methodology for accounts receivable and costs in excess of billings (collectively "accounts receivable") is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' accounts receivables.  The Company is exposed to credit losses through sales of products and services.  Due to the short-term nature of such accounts receivable, the estimated amount of accounts receivable that may not be collected is based on aging of the accounts receivable balances.  Additionally, specific allowance amounts are established to record the appropriate provision for customers that no longer share risk characteristics similar with other accounts receivable. The Company&#8217;s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions.  Balances are written off when determined to be u</span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ncollectible </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">after all means of collection have been exhausted and the potential for recovery is considered remote.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates are used to determine the allowance. These estimates are based on assessment of anticipated payment and all other historical, current and future information that is reasonably available.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes activity recorded within the allowance for doubtful accounts and contract assets balances for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.788%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.454%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,529&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,951&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adoption of ASU 2016-13, cumulative-effect adjustment to retained earnings at January 1, 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">385&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Bad debt expense, net of recoveries</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,221&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,321&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts written off against allowance and other adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,213)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(689)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,128)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Ending balance</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,746&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,738&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,529&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Concentrations of credit risk in accounts receivable are limited to those from significant customers that are believed to be financially sound. As of December&#160;31, 2022 and 2021, the Company's most significant customer is a home improvement retailer. The</span><span style="color:#291bff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span>home improvement retailer purchases from the Residential segment.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventories</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Inventories</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are valued at the lower of cost, determined using the first-in, first-out method, or net realizable value. Shipping and handling costs are recognized as a component of cost of sales.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, plant, and equipment</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Property, plant, and equipment</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant, and equipment are stated at cost and depreciated over their estimated useful lives using the straight-line method. Interest is capitalized in connection with construction of qualified assets. Expenditures that exceed an established dollar threshold and that extend the useful lives of assets are capitalized, while repair and maintenance costs are expensed as incurred. The estimated useful lives of land improvements, buildings, and building improvements are 15 to 40 years, while the estimated useful lives for machinery and equipment are 3 to 20 years.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsPolicy', window );">Acquisition related assets and liabilities</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Acquisition related assets and liabilities</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounting for the acquisition of a business as a purchase transaction requires an allocation of the purchase price to the assets acquired and the liabilities assumed in the transaction at their respective estimated fair values. The most complex estimations of individual fair values are those involving long-lived assets, such as property, plant, and equipment and intangible assets. The Company uses all available information to make these fair value determinations and engages independent valuation specialists to assist in the fair value determination of the acquired long-lived assets.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock', window );">Goodwill and other intangible assets</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Goodwill and other intangible assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company tests goodwill for impairment at the reporting unit level on an annual basis at October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of a reporting unit could be below its carrying value. The reporting units are at the component level, or one level below the operating segment level. Goodwill is assigned to each reporting unit as of the date the reporting unit is acquired.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company may elect to perform a qualitative assessment that considers economic, industry and company-specific factors for some or all of the Company's selected reporting units. If, after completing the assessment, it is determined that it is more likely than not that the fair value of a reporting unit is less than its carrying value, the Company proceeds to a quantitative test. The Company may also elect to perform a quantitative test instead of a qualitative test for any or all of the Company's reporting units.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The quantitative impairment test consists of comparing the fair value of a reporting unit, determined using two valuation techniques, to its carrying value. If the carrying value of the reporting unit exceeds its fair value, goodwill is </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">considered impaired, and a loss measured by the excess of the carrying value of the reporting unit over the fair value of the reporting unit must be recorded.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also tests its indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of an indefinite-lived intangible asset could be below its carrying value. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, determined using discounted cash flows on a relief-from-royalty basis, with its carrying amount.  An impairment loss would be recognized for the carrying amount in excess of its fair value.  Acquired identifiable intangible assets are recorded at cost. Identifiable intangible assets with finite useful lives are amortized over their estimated useful lives. For additional disclosure of the Company's goodwill and other intangible assets refer to Note 7 "Goodwill and Related Intangible Assets."</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment of long-lived assets</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Impairment of long-lived assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-lived assets, including acquired identifiable intangible assets with finite useful lives, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of those assets may not be recoverable.  In specific situations, when the Company has selected individual assets to be sold or scrapped, the Company obtains market value data for those specific assets and measures and records the impairment loss based on such data. Otherwise, the Company uses undiscounted cash flows to determine whether impairment exists and measures any impairment loss by approximating fair value using acceptable valuation techniques, including discounted cash flow models and third-party appraisals. For additional disclosure on impairment of the Company's long-lived assets refer to Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments."</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company determines if an agreement is, or contains, a lease at the inception of the agreement. At lease commencement, the Company recognizes a right-of-use asset and a lease liability for leases with terms greater than twelve months.  The initial lease liability is recognized at the present value of remaining lease payments over the lease term.  Leases with an initial term of twelve months or less are not recorded on the Company's consolidated balance sheets.  The Company recognizes lease expense for operating leases on a straight-line basis over the lease term.  The Company combines lease and non-lease components, such as common area maintenance costs, in calculating the related asset and lease liabilities for all underlying asset groups.  Operating lease cost is included in income from operations and includes short-term leases and variable lease costs which are immaterial.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredChargesPolicyTextBlock', window );">Deferred charges</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Deferred charges</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred charges associated with initial costs incurred to enter into new debt arrangements are included as a component of long-term debt and are amortized as a part of interest expense over the terms of the associated debt agreements.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdvertisingCostsPolicyTextBlock', window );">Advertising</a></td>
<td class="text">AdvertisingThe Company expenses advertising and marketing costs as incurred.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign currency transactions and translation</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Foreign currency transactions and translation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The assets and liabilities of the Company&#8217;s foreign subsidiaries are translated into U.S. dollars at the rate of exchange in effect at the balance sheet date. Income and expense items are translated at the average exchange rates prevailing during the period.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income taxes</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Income taxes</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes is determined using the asset and liability approach. Under this approach, deferred income taxes represent the expected future tax consequences of temporary differences between the carrying amounts and tax basis of assets and liabilities. The Company records a valuation allowance to reduce deferred tax assets when uncertainty exists regarding their realization.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Equity-based compensation</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Equity-based compensation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company measures the cost of equity-based compensation based on grant date fair value and recognizes the cost over the period in which the employee is required to provide service in exchange for the award reduced by forfeitures. Equity-based compensation consists of grants of stock options, deferred stock units, common stock, restricted stock units, and performance stock units. Equity-based compensation expense is included as a component of selling, general, and administrative expenses.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent accounting pronouncements</a></td>
<td class="text">Recent accounting pronouncements<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for advertising cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (a)-(d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6909625&amp;loc=d3e227-128457<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4273-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<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 1<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=d3e5614-111684<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredChargesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for deferral and amortization of significant deferred charges.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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(17))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredChargesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -URI https://asc.fasb.org/topic&amp;trid=2175825<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&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 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -URI https://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 360<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32247-109318<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 20<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32847-109319<br><br>Reference 3: 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 19<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32840-109319<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 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL116659661-227067<br><br>Reference 5: 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> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 6: 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 28<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32280-109318<br><br>Reference 7: 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 17<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI https://asc.fasb.org/topic&amp;trid=2126998<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(6)(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126900757&amp;loc=d3e543-108305<br><br>Reference 7: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for leasing arrangement entered into by lessee.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918666-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeLeasesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99893-112916<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 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue from contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130561-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 20<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-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 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130563-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI https://asc.fasb.org/topic&amp;trid=49130388<br><br>Reference 5: 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 20<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 6: 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 18<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130563-203045<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 8: 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 20<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 9: 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 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130564-203045<br><br>Reference 10: 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 20<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for segment reporting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8864-108599<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 29<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8864-108599<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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 4: 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 29<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8864-108599<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 29<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8864-108599<br><br>Reference 6: 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 29<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8864-108599<br><br>Reference 7: 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 29<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8864-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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.Q6)<br> -URI https://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TradeAndOtherAccountsReceivablePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e4975-111524<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5212-111524<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5093-111524<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 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5033-111524<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradeAndOtherAccountsReceivablePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111703024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="Show.showAR( this, 'defref_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock', window );">Summary Of Activity Recorded Within The Allowance For Doubtful Accounts</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes activity recorded within the allowance for doubtful accounts and contract assets balances for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.788%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.454%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,529&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,951&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adoption of ASU 2016-13, cumulative-effect adjustment to retained earnings at January 1, 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">385&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Bad debt expense, net of recoveries</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,221&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,321&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts written off against allowance and other adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,213)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(689)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,128)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Ending balance</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,746&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,738&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,529&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Property, Plant and Equipment</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below sets forth the depreciation expense recognized during the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,583&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,110&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,252&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of property, plant, and equipment at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land and land improvements</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,704&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,634&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Building and improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,416&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,526&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,843&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194,015&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,065&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,293&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, gross</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">285,028&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261,468&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(175,444)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(164,583)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">109,584&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,885&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of 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="Show.toggleNext( this );">+ References</a><div 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> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allowance for credit loss of financing receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327197535248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Contract with Customer, Asset and Liability</a></td>
<td class="text"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:51.176%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.318%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.318%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.320%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs in excess of billings</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,732&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,437&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,915&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billings in excess of cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(35,017)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(46,711)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(34,702)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unearned revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,572)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,681)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(21,325)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113447552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts Receivable (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Schedule of Accounts Receivable</a></td>
<td class="text"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable at December 31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:55.938%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.014%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.015%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts receivable</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179,170&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,745&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs in excess of billings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,732&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,437&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total accounts receivables</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220,902&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240,182&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,746)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,738)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">217,156&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">236,444&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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,4)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113323712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventories</a></td>
<td class="text"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw material</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,187&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135,558&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work-in-process</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,944&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,523&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,256&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross inventory</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,654&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">180,672&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less reserves</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,294)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,465)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">170,360&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,207&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock', window );">Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes activity recorded within the reserve for excess, obsolete and slow moving inventory for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,400&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,161&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,463&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess, obsolete and slow moving inventory expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,582&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">215&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">355&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Scrapped inventory and other adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">343&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,179&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,400&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,161&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_SummaryOfSlowMovingInventoryActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Rollforward of excess, obsolete, and slow-moving inventory reserve.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_SummaryOfSlowMovingInventoryActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327117626784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant, and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Components of Property, Plant, and Equipment</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below sets forth the depreciation expense recognized during the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,583&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,110&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,252&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of property, plant, and equipment at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land and land improvements</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,704&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,634&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Building and improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,416&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,526&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,843&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194,015&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,065&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,293&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, gross</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">285,028&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261,468&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(175,444)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(164,583)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">109,584&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,885&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of 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="Show.toggleNext( this );">+ References</a><div 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> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111495360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock', window );">Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preliminary allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:85.011%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.789%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,018&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,759&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,700&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,813&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,295)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,085&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The allocation of the TerraSmart purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:78.987%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.813%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,491&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,569&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,446&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,150&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,854&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,640)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140,997&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,867&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo is as follows as of the respective date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.438%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:25.362%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Working capital</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,377)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,740&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,066&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,528&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,381&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,576)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,161&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of purchase consideration</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,102&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock', window );">Schedule of Acquired Intangible Assets</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in this acquisition consisted of the following as of the date of acquisition (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:51.677%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.221%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:25.218%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,800&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,700&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in the TerraSmart acquisition consisted of the following as of the date of acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:51.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.397%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:25.256%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,830&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,110&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 years</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,270&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less than 1 year</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,150&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets acquired in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo consisted of the following as of the respective date of the acquisition (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.438%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:26.387%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average Amortization Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,177&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,345&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 15 years</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,480&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11 - 13 years</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,036&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less than 1 year</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,066&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ScheduleofBusinessCombinationCostsTableTextBlock', window );">Schedule of Business Combination Costs</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition-related costs consisted of the following for the years ended December 31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:53.445%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.562%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.562%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.565%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,427&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">634&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">545&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">949&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,230&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total acquisition related costs</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,972&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">949&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,864&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ScheduleofBusinessCombinationCostsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Business Combination Costs [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ScheduleofBusinessCombinationCostsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1486-128463<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 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327112542096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfGoodwillTextBlock', window );">Schedule of Changes in Carrying Amount of Goodwill</a></td>
<td class="text"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the years ended December&#160;31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:33.841%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.335%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192,527&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">205,452&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84,622&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,678&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">514,279&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to prior year acquisitions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,433)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,110)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,414)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">187&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,227)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188,680&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">205,452&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,132&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,678&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">510,942&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,604&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,604&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustment to prior year acquisition</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">904&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">904&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,554)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,533)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,087)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188,030&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,056&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,599&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,678&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">512,363&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock', window );">Schedule of Acquired Intangible Assets</a></td>
<td class="text"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Acquired intangible assets consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:45.829%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.624%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indefinite-lived intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,500&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,700&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finite-lived intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,481&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,521&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unpatented technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,163&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,037&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,474&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,656&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,557&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,591&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,832&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,371&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,006&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,686&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,969&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">157,107&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,081&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162,472&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,668&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total acquired intangible assets</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212,607&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,081&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">215,172&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,668&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock', window );">Schedule of Intangible Assets Amortization Expense</a></td>
<td class="text">The following table summarizes amortization expense for the years ended December&#160;31 (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:59.047%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.695%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,584&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,856&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,663&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Amortization Expense</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense related to acquired intangible assets for the next five years ended December&#160;31 is estimated as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:45.401%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.666%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.671%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2027</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,102&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,922&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,782&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,370&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,728&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1A<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=SL108378252-109267<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327117647488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Accrued Expenses</a></td>
<td class="text"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued expenses at December&#160;31 consisted of the following (in thousands): </span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Compensation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,010&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,293&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer rebates</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,768&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_2d1782bf-442c-4339-b6ee-027a31ee3839"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_ccd48544-48b8-4ce4-885c-7cb992fa852e">Current operating lease liability</span></span></span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,620&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,239&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,440&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,310&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued warranties</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,251&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,686&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest and taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,696&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,463&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unearned revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,572&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,681&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of MSPP liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,267&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,947&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,097&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total accrued expenses</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,721&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67,993&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327112675712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAbstract', window );"><strong>Long-Term Debt, Unclassified [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtTableTextBlock', window );">Schedule of Debt</a></td>
<td class="text"><div style="margin-top:6pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:56.063%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.955%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit facility</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,500&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less unamortized debt issuance costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,238)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(719)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total debt</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,762&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,781&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ScheduleOfInterestCashPaymentTableTextBlock', window );">Schedule of Cash Paid for Interest</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total cash paid for interest in the years ended December&#160;31 was (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:59.133%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.623%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,047&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,639&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">703&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">276&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-cash adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(679)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(345)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(345)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for interest</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,542&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,563&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">634&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ScheduleOfInterestCashPaymentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of interest, cash payment [table text block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ScheduleOfInterestCashPaymentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111401808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension and Other Postretirement Benefits (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems', window );"><strong>Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock', window );">Schedule of Total Expense for All Retirement Plans</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total expense for all retirement plans for the years ended December&#160;31 was (in thousands):</span></div><div style="margin-top:3pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:44.075%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.449%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401(k) plan</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,580&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,196&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,403&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Multiemployer and other defined benefit and pension plans</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Postretirement healthcare plan</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">342&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">411&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">351&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total retirement plan expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,001&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,685&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,824&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock', window );">Amounts Recognized in the Consolidated Financial Statements</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts recognized in the consolidated financial statements consisted of (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.788%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.590%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.592%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued postretirement benefit liability:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">358&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long term portion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,876&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,844&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pre-tax accumulated other comprehensive loss &#8211; unamortized post-retirement healthcare costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(74)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,942)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount recognized</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,155&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,260&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember', window );">Other Postretirement Benefits</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems', window );"><strong>Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNetFundedStatusTableTextBlock', window );">Changes in the Accumulated Postretirement Benefit Obligation</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the changes in the accumulated postretirement benefit obligation related to the Company&#8217;s unfunded postretirement healthcare benefits at December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:62.976%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.495%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.496%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projected benefit obligation at January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,202&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,443&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Plan amendments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Actuarial gain</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,784)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(200)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefits paid, net of contributions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(316)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(328)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projected benefit obligation at December&#160;31</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,229&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,202&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of plan assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Under funded status</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,229)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,202)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unamortized prior service cost</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized actuarial (gain) loss</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(278)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,530&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount recognized</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,155)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,260)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock', window );">Schedule of Net Periodic Pension and Other Post-Retirement Benefit Costs</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of net periodic postretirement benefit cost charged to expense for the years ended December&#160;31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Service cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of unrecognized prior service cost</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss amortization (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">211&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">282&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">290&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assumptions used to calculate the benefit obligation:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Annual rate of increase in the per capita cost of:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Medical costs before age 65 (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Medical costs after age 65 (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:20.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prescription drug costs (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)  For 2022, it was assumed that these rates would gradually decline to 4.0% by 2075.  For 2021 and 2020, it was assumed that these rates would gradually decline to 3.8% by 2075.</span></div><div style="padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)  Actuarial losses are amortized utilizing the corridor approach. Differences between actual experience and the actuarial assumptions are reflected in (gain)/loss. If the total net (gain) or loss exceeds 10 percent of the greater of the accumulated postretirement benefit obligation or plan assets, this excess must be amortized over the average remaining service period of the active plan participants. If most of the plan participants are inactive, the amortization period is the expected future lifetime of inactive plan participants.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock', window );">Expected Benefit Payments from the Plan</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Expected benefit payments from the plan for the years ended December&#160;31 are as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:24.010%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.913%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.733%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Years 2028 - 2032</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected benefit payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">357&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">369&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">359&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">355&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,649&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amounts that are recognized in the balance sheet (or statement of financial position) for pension plans and/or other employee benefit plans, showing separately the assets and current and noncurrent liabilities (if applicable) recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the costs related to the various types of retirement plans including defined benefit pension plan cost, defined contribution plan cost, other postretirement benefit plan cost, and net periodic benefit cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of benefits expected to be paid by pension plans and/or other employee benefit plans in each of the next five fiscal years and in the aggregate for the five fiscal years thereafter.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNetFundedStatusTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of net funded status of pension plans and/or other employee benefit plans.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNetFundedStatusTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</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>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327117564416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Income (Loss) (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract', window );"><strong>Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Schedule of Components of Accumulated Other Comprehensive Income (Loss)</a></td>
<td class="text"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The cumulative balance of each component of accumulated other comprehensive income (loss) is as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:36.473%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.180%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.671%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.672%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Pre-Tax Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Tax (Benefit) Expense</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated Other Comprehensive Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(872)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,426)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,298)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(837)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,461)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,640&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,247)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(607)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(794)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">187&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Minimum post retirement benefit plan adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,852&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,852&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">449&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,403&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,022)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,022)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,022)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,382)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(395)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,777)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(345)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,432)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327109118352">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Share-Based Payment Arrangement, Noncash Expense [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock', window );">Summary of Compensation Expense Connection with Awards</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized the following compensation expense in connection with awards that vested under the 2018 Plan, the 2015 Plan, the Prior Plan, and the Non-Employee Directors Plan along with the related tax benefits recognized during the years ended December 31 (in thousands):</span></div><div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:59.047%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.694%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.695%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the Prior Plan</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the 2015 Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,617&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,186&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,932&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the 2018 Plan</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,928&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,597&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,441&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense recognized under the Non-Employee Directors Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">840&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">760&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stock compensation expense</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,334&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,652&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,173&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tax benefits recognized related to stock compensation expense</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,175&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,189&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,272&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock', window );">Schedule of Number of Awards and Weighted Average Grant Date Fair Value</a></td>
<td class="text"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the number of stock units and common stock granted during the years ended December&#160;31, along with the weighted-average grant-date fair value of each award:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:27.199%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.457%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.776%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.457%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.776%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.457%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.780%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Awards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Number<br/>of Awards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred stock units</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,460&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">42.69&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">7,536&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">83.58&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,402&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">45.98&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Common stock</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,652&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">42.49&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,512&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">83.58&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,134&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">45.98&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">132,430&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">43.92&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">72,243&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79.28&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">81,397&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">56.81&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Performance stock units (1)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">108,464&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">47.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">62,778&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">87.84&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">160,426&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">55.98&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt;padding-left:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Company&#8217;s performance stock units (&#8220;PSUs&#8221;) represent shares granted for which the final number of shares earned depends on financial performance or market conditions.  The number of shares to be issued may vary between 0% and 200% of the number of PSUs granted depending on the relative achievement to targeted thresholds.  The Company's PSUs with a financial performance condition are based on either the Company&#8217;s return on invested capital (&#8220;ROIC&#8221;) over a one-year period performance period or other criteria such as revenue, gross profit, and operating profit thresholds over a three-year performance period.  The Company's PSUs with a market condition are based on the ranking of the Company&#8217;s total shareholder return (&#8220;TSR&#8221;) performance, on a percentile basis, over a three-year performance period compared to the S&amp;P Small Cap Industrial sector, over the same three-year performance period.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock', window );">Summary of Ranges of Outstanding and Exercisable Options</a></td>
<td class="text">The following table summarizes the Company's outstanding and exercisable options at December&#160;31, 2022:<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:28.578%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.919%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options<br/>Outstanding</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Remaining<br/>Contractual Life<br/>(in years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options<br/>Exercisable</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$39.55</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4.26</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of Stock Options Transactions</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes information about stock option transactions:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"/><td style="width:32.478%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.953%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.953%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.953%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.955%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Options</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Remaining Contractual<br/>Life (in&#160;years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Aggregate<br/>Intrinsic&#160;Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at January&#160;1, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">117,409&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">19.91&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(75,909)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14.73&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">41,500&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">29.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(36,500)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">27.99&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,000&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">39.55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4.26</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">31,650&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock', window );">Summary of Information About Restricted Stock Units and Weighted Average Grant Date Fair Value</a></td>
<td class="text"><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes information about non-vested restricted stock units and performance stock units (that will convert to shares upon vesting) and common stock:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.998%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Restricted<br/>Stock<br/>Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Performance<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Deferred<br/>Stock<br/>Units (2)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Weighted<br/>Average<br/>Grant&#160;Date<br/>Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">204,584&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52.90&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">363,474&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">55.44&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,472&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43.99&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,430&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43.92&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,652&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42.49&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">108,464&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,460&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42.69&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments (1)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(65,209)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">82.75&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(83,714)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.77&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(15,652)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42.49&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(145,153)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.28&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(14,582)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40.53&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(17,930)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59.62&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(50,208)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61.51&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">235,370&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">49.87&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">211,368&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,350&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.16&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt;padding-left:18pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Company's PSU adjustments during 2022 represents (i) 55,959 shares for which the performance condition was not achieved and the PSUs were adjusted in the first quarter of 2022 to reflect zero PSU earned as the threshold level of achievement was not met based on the Company's actual ROIC achievement level for the performance period ended December&#160;31, 2021 and (ii) 9,250 shares not earned that related to two separate PSU awards granted in 2019 and 2020 that the threshold level of achievement based on other performance criteria as defined in the respective awards over a two-year or three-year performance periods were not met for the performance periods ended December&#160;31, 2021.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2) Vested and issuable upon termination from service as a member of the Company's Board of Directors.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock', window );">Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the aggregate intrinsic value of options exercised and aggregate fair value of restricted stock units and restricted shares that vested during the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate intrinsic value of options exercised</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,103&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,812&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested restricted stock units</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,920&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,320&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11,851&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested common stock</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">665&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">370&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">190&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested performance stock units</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,729&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,080&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,197&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Aggregate fair value of vested deferred stock units</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">105&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">630&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">570&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_CashPaidToSettleLiabilityAwardsTableTextBlock', window );">Cash Paid to Settle Liability Awards</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the number of restricted stock units credited to active participant accounts, balance of vested and unvested restricted stock units within active participant accounts, payments made with respect to restricted stock units issued under the MSPP, and MSPP expense during years ended December&#160;31:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units credited</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,365&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,475&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57,046&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units balance, vested and unvested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,644&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,892&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">231,343&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share-based liabilities paid (in thousands)</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,689&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,915&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,401&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MSPP (recovery) expense (in thousands)</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,459)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,034&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_CashPaidToSettleLiabilityAwardsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash Paid To Settle Liability Awards [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_CashPaidToSettleLiabilityAwardsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of the intrinsic value of options exercised and fair value of restricted stock and restricted stock units vested during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the weighted-average grant-date fair value of equity options or other equity instruments granted during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of number, weighted-average exercise price or conversion ratio, aggregate intrinsic value, and weighted-average remaining contractual term for outstanding and exercisable options that are fully vested and expected to vest. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327117641376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued Operations (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract', window );"><strong>Discontinued Operations and Disposal Groups [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock', window );">Schedule of Discontinued Operations</a></td>
<td class="text">The following table summarizes these assets and liabilities which have been measured at the lower of (i) the carrying value when classified as held for sale and (ii) the fair value of the business less costs to sell.<div style="margin-top:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.854%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets held for sale</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net of allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">266&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories, net of reserves</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,748&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,999&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">495&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,213&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,990)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets held for sale</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,062&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities held for sale</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">733&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,159&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities held for sale</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,962&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales, operating loss and valuation allowance recorded for this disposal group for the years ended December 31 are as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.361%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:10.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.159%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,840&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,328&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating loss</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,769)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,539)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,990)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the income (loss) from discontinued operations before taxes, including the interest allocated to discontinued operations, for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.800%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.961%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,391&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128,915&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,493&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,822&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss and adjustments to loss on disposal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,419&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,600&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense allocation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations before taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,479&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,602)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_DiscontinuedOperationsAndDisposalGroupsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=SL51724579-110230<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1474-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5D<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721677-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721659-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721665-107760<br><br>Reference 7: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721671-107760<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721663-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111575472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Exit Activity Costs and Asset Impairments (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesAbstract', window );"><strong>Restructuring and Related Activities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock', window );">Reconciliation of Liability for Exit Activity Costs Relating to Facility Consolidation Efforts</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the exit activity costs (recoveries) and asset impairment charges incurred by segment during the years ended December&#160;31 related to the restructuring activities described above (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.256%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:6.366%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs (recoveries)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Exit activity costs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Asset impairment charges</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,256&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,198&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,454&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,769&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,193&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,962&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,825&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,837&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">393&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">393&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">731&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">740&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">771&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,066&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,837&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,687&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,687&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">860&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">932&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(63)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(63)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">375&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">375&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,039&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,276&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,315&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,020&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,193&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,213&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,207&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">81&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,288&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table reconciles the beginning and ending liability for exit activity costs relating to the Company&#8217;s facility consolidation efforts (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,030&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exit activity costs recognized</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,039&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,020&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,894)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,778)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December&#160;31</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,417&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock', window );">Summary of Exit Activity Costs and Asset Impairments Recorded in the Consolidated Statements of Operations</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides a summary of where the above exit activity costs and asset impairments are recorded in the consolidated statements of operations for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,258&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,176&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,059&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,229&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total exit activity costs and asset impairments</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,315&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,213&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,288&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_RestructuringAndRelatedActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfRestructuringAndRelatedCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of costs incurred for restructuring including, but not limited to, exit and disposal activities, remediation, implementation, integration, asset impairment, and charges against earnings from the write-down of assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 5.P.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140864-122747<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.P.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327109136912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock', window );">Components of Income (Loss) Before Taxes from Continuing Operations</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of income before taxes from continuing operations consisted of the following for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Domestic</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">112,635&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,155&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,930&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,145)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,407&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,171)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before taxes from continuing operations</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,490&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99,562&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107,759&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Summary of Provision for Income Taxes for Continuing Operations</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from continuing operations for the years ended December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,014&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,137&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,505&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,647&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,009&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,071&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">932&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,747&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,078&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,682&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,259&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,766&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,620&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,381&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">672&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(303)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,068&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(506)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,337&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,968&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,786&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,084&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,046&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,468&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock', window );">(Benefit of) Provision for Income Taxes from Discontinued Operations</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from discontinued operations for the years ended December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">362&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,345&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">214&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,725&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,127&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(340)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(876)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(138)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(349)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,004)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">366&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,123&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes from continuing operations differs from the federal statutory rate of 21% due to the following for the years ended December 31 (in thousands, except for percentages) :</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:31.792%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.325%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.325%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.331%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Statutory rate</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,413&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,908&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,629&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State taxes, less federal effect</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,541&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,068&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,650&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal tax credits</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(549)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(587)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,064)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.0)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess tax benefit on stock based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(214)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,039)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2.0)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,674)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">960&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,781&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,114&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(130)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(67)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">915&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(57)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,084&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.1&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,046&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.2&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,468&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22.7&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Deferred Tax Liabilities (Assets)</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax liabilities at December&#160;31 consisted of the following (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:72.692%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,570&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,633&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,132&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,265&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,706&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,657&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,133&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,298&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross deferred tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,541&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,853&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital loss carryforward</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,490)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,328)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Equity compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,993)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,236)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets held for sale</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,669)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capitalized research and development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,503)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(17,493)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,641)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross deferred tax assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68,148)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(51,205)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Valuation allowances</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,581&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax assets, net of valuation allowances</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41,660)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(24,624)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,881&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,229&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SummaryOfValuationAllowanceTextBlock', window );">Summary of Valuation Allowance</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following sets forth a reconciliation of the beginning and ending amount of the Company&#8217;s valuation allowance (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of January&#160;1</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,581&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost charged to the tax provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reductions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(103)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(248)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassification from discontinued operations upon sale of industrial group</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Currency translation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December&#160;31</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,488&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,581&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock', window );">Income Taxes Paid, Net of Tax Refunds</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company made net payments for income taxes for the following amounts for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"/><td style="width:54.077%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.249%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.539%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.249%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.539%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.547%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments made for income taxes, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,017&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,076&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,351&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income taxes paid and net of tax refunds [Table Text Block].</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Components Of Income Tax Expense Benefit For Discontinued Operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of income before income tax between domestic and foreign jurisdictions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SummaryOfValuationAllowanceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of valuation allowances to reduce deferred tax assets to net realizable value, including identification of the deferred tax asset more likely than not will not be fully realized and the corresponding amount of the valuation allowance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SummaryOfValuationAllowanceTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111431792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Computation of Basic and Diluted Earnings per Share</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Weighted average shares outstanding for basic and diluted earnings were as follows for the years ended December&#160;31 (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income from continuing operations</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,406&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,516&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,291&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,113&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,725)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income available to common shareholders</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,406&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,629&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,566&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for basic earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,096&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,873&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,664&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for diluted earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common stock options and stock units</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">181&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">254&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares and conversions</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,192&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,054&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,918&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock', window );">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the potential anti-dilutive common stock options and stock units for the years ended December 31 (in thousands): </span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Common stock options and stock units</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">43&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327117441760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AssetsAndLiabilitiesLesseeTableTextBlock', window );">Assets And Liabilities, Lessee</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts recognized in the Company's consolidated balance sheet at December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:14.250%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:52.116%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.250%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.254%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,502&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,120&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,620&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,239&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,041&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,390&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,661&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,629&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Lease, Cost</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease costs for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:65.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.576%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,191&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,977&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,005&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,694&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,153&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">996&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,885&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,130&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,001&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to the Company's operating right-of-use assets and related operating lease liabilities for the years ended December 31 were as follows (in thousands):</span></div><div style="margin-top:3pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:65.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.576%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of operating liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,835&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,431&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,502&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for new lease liabilities</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,008&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,084&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to the Company's lease terms and discount rates as of December 31 were as follows:</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.467%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.332%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.335%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term - operating leases</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.3</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.0</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate - operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.2</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Lessee, Operating Lease, Liability, Maturity</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The future maturity of the Company's lease liabilities as of December&#160;31, 2022 were as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:77.339%"><tr><td style="width:1.0%"/><td style="width:85.100%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.700%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,734&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,884&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,850&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,444&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,817&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">After 2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,740&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: present value discount</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,079)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of lease liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,661&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_AssetsAndLiabilitiesLesseeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Assets And Liabilities, Lessee [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_AssetsAndLiabilitiesLesseeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of 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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113446256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Information (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationRevenueAbstract', window );"><strong>Segment Reporting Information, Revenue for Reportable Segment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock', window );">Measurements Used by Management to Assess Performance of Segments</a></td>
<td class="text"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">392,368&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">445,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">402,797&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">519,567&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">453,469&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">407,132&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">193,966&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212,038&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">216,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80,264&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,662&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80,796&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,246&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets of discontinued operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,438&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,210,613&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,214,901&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,212,494&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Renewables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,589&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,268&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">423&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,050&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,182&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,313&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agtech</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,177&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,289&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">720&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Infrastructure </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,898&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,097&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenditures</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,424&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,869&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,101&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,138&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,705&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,068&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text"><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables illustrate revenue disaggregated by timing of transfer of control to the customer for the years ended December 31 (in thousands): </span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.099%"><tr><td style="width:1.0%"/><td style="width:20.211%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.846%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.995%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.375%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.995%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.545%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.998%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,317&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">761,576&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,983&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">834,887&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">350,250&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,672&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,857&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,300&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">555,079&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">377,567&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">767,248&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,868&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,283&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,389,966&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="27" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,630&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">630,494&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,157&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,512&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">711,793&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">403,466&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,011&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179,004&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,509&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">627,990&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">432,096&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">635,505&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,161&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,021&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339,783&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Renewables</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Residential</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Agtech</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Infrastructure</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in Time</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,833&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">518,281&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,894&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,781&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">616,789&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over Time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">215,274&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,533&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,566&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,416&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">415,789&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">238,107&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">522,814&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,460&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,197&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032,578&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock', window );">Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales by region or origin and long-lived assets by region of domicile for the years ended and as of December&#160;31 are as follows (in thousands):</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:59.222%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.640%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North America</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,373,907&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,318,795&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,018,406&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asia</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,059&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,988&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,172&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,389,966&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339,783&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032,578&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-lived assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North America</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,553&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97,003&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,685&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asia</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">234&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">365&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">476&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,787&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97,368&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,161&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of each significant reconciling item, other than profit (loss), revenues, or assets, in the reconciliation of totals of such items in reportable segments to the entity's corresponding consolidated amount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-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 30<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information concerning material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<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.1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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>64
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111770928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Summary of Activity Recorded within the Allowance for Doubtful 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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsNotesAndLoansReceivableLineItems', window );"><strong>Accounts, Notes, Loans and Financing Receivable [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="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Beginning balance</a></td>
<td class="nump">$ 3,738<span></span>
</td>
<td class="nump">$ 3,529<span></span>
</td>
<td class="nump">$ 5,951<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Bad debt expense, net of recoveries</a></td>
<td class="nump">1,221<span></span>
</td>
<td class="nump">898<span></span>
</td>
<td class="nump">1,321<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs', window );">Accounts written off against allowance and other adjustments</a></td>
<td class="num">(1,213)<span></span>
</td>
<td class="num">(689)<span></span>
</td>
<td class="num">(4,128)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Ending balance</a></td>
<td class="nump">3,746<span></span>
</td>
<td class="nump">3,738<span></span>
</td>
<td class="nump">3,529<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember', window );">Cumulative Effect, Period of Adoption, Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsNotesAndLoansReceivableLineItems', window );"><strong>Accounts, Notes, Loans and Financing Receivable [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="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Beginning balance</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">385<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Ending balance</a></td>
<td class="text">&#160;<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_us-gaap_AccountsNotesAndLoansReceivableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsNotesAndLoansReceivableLineItems</td>
</tr>
<tr>
<td style="padding-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_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<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(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FinancingReceivableAllowanceForCreditLossesWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of writeoff of financing receivable, charged against allowance for credit loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 55<br> -Paragraph 79<br> -URI https://asc.fasb.org/extlink&amp;oid=124267575&amp;loc=SL82922352-210448<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_srt_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember</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>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113592288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Narrative) (Details)<br> $ in Millions</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>Mar. 31, 2022 </div>
<div>segment</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>segment</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reportable segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdvertisingExpense', window );">Advertising costs | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10.9<span></span>
</td>
<td class="nump">$ 8.0<span></span>
</td>
<td class="nump">$ 7.2<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Land, Buildings and Improvements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">15 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Machinery and Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Land, Buildings and Improvements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">40 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Machinery and Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">20 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential | Home Improvement Retail Company | Accounts Receivable | Customer Concentration Risk</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentrations of credit risk</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14.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="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential | Home Improvement Retail Company | Net sales | Customer Concentration Risk</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentrations of credit risk</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesAndAgtechMember', window );">Renewables and Agtech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleLeasebackTransactionLineItems', window );"><strong>Sale Leaseback Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reportable segments</a></td>
<td class="nump">2<span></span>
</td>
<td class="nump">2<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_AdvertisingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount 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="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 https://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<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 20<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<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 20<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SaleLeasebackTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SaleLeasebackTransactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandBuildingsAndImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandBuildingsAndImprovementsMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=rock_HomeImprovementRetailCompanyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=rock_HomeImprovementRetailCompanyMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesAndAgtechMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesAndAgtechMember</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>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113429712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Summary of Interest Capitalized and Depreciation Expense) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation expense</a></td>
<td class="nump">$ 14,583<span></span>
</td>
<td class="nump">$ 13,110<span></span>
</td>
<td class="nump">$ 11,252<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of 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="Show.toggleNext( this );">+ References</a><div 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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113573600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue - Narrative (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Revenue, Initial Application Period Cumulative Effect Transition [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract', window );">Asset recognized related to incremental costs of obtaining a contract</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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNet', window );">Costs in excess of billings</a></td>
<td class="nump">41,732,000<span></span>
</td>
<td class="nump">54,437,000<span></span>
</td>
<td class="nump">$ 26,915,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Unearned revenue</a></td>
<td class="nump">4,572,000<span></span>
</td>
<td class="nump">3,681,000<span></span>
</td>
<td class="nump">21,325,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetReclassifiedToReceivable', window );">Revenue recognized which was in contract liabilities</a></td>
<td class="nump">44,400,000<span></span>
</td>
<td class="nump">53,000,000<span></span>
</td>
<td class="nump">57,800,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=rock_BillingsinExcessofCostMember', window );">Billings in excess of cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Revenue, Initial Application Period Cumulative Effect Transition [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="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Unearned revenue</a></td>
<td class="nump">$ 35,017,000<span></span>
</td>
<td class="nump">$ 46,711,000<span></span>
</td>
<td class="nump">$ 34,702,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Revenue, Initial Application Period Cumulative Effect Transition [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ContractWithCustomerContractPaymentTerms', window );">Contract payment terms</a></td>
<td class="text">30 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Revenue, Initial Application Period Cumulative Effect Transition [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ContractWithCustomerContractPaymentTerms', window );">Contract payment terms</a></td>
<td class="text">60 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Remaining performance obligation expected timing of satisfaction</a></td>
<td class="text">1 year<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_rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract with Customer, Asset, Obtained through Incremental Cost of Obtaining Contract</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_ContractWithCustomerContractPaymentTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract With Customer, Contract Payment Terms</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ContractWithCustomerContractPaymentTerms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_CapitalizedContractCostLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostLineItems</td>
</tr>
<tr>
<td style="padding-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_ContractWithCustomerAssetNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&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 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-203044<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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130533-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerAssetReclassifiedToReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time from transfer to receivable due to right to consideration becoming unconditional.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetReclassifiedToReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period 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="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 https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BalanceSheetLocationAxis=rock_BillingsinExcessofCostMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=rock_BillingsinExcessofCostMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108899472">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue - Contract Assets and Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Revenue, Initial Application Period Cumulative Effect Transition [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="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNet', window );">Costs in excess of billings</a></td>
<td class="nump">$ 41,732<span></span>
</td>
<td class="nump">$ 54,437<span></span>
</td>
<td class="nump">$ 26,915<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract with customer liability</a></td>
<td class="num">(4,572)<span></span>
</td>
<td class="num">(3,681)<span></span>
</td>
<td class="num">(21,325)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=rock_BillingsinExcessofCostMember', window );">Billings in excess of cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Revenue, Initial Application Period Cumulative Effect Transition [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="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract with customer liability</a></td>
<td class="num">$ (35,017)<span></span>
</td>
<td class="num">$ (46,711)<span></span>
</td>
<td class="num">$ (34,702)<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_CapitalizedContractCostLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostLineItems</td>
</tr>
<tr>
<td style="padding-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_ContractWithCustomerAssetNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&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 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-203044<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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130533-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BalanceSheetLocationAxis=rock_BillingsinExcessofCostMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=rock_BillingsinExcessofCostMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327109166576">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accounts Receivable (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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="Show.showAR( this, 'defref_us-gaap_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableGrossCurrent', window );">Trade accounts receivable</a></td>
<td class="nump">$ 179,170<span></span>
</td>
<td class="nump">$ 185,745<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnbilledContractsReceivable', window );">Costs in excess of billings</a></td>
<td class="nump">41,732<span></span>
</td>
<td class="nump">54,437<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_rock_ContractsReceivableGrossCurrent', window );">Total contract receivables</a></td>
<td class="nump">220,902<span></span>
</td>
<td class="nump">240,182<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Less allowance for doubtful accounts</a></td>
<td class="num">(3,746)<span></span>
</td>
<td class="num">(3,738)<span></span>
</td>
<td class="num">$ (3,529)<span></span>
</td>
<td class="num">$ (5,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="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="nump">$ 217,156<span></span>
</td>
<td class="nump">$ 236,444<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_rock_ContractsReceivableGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contracts Receivable, Gross, Current</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ContractsReceivableGrossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsReceivableGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br><br>Reference 4: 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)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableGrossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<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(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-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_UnbilledContractsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unbilled amounts due for services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the entity and, at a minimum, one other party. An example would be amounts associated with contracts or programs where the recognized revenue for performance thereunder exceeds the amounts billed under the terms thereof as of the date of the balance sheet.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 310<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126938201&amp;loc=d3e55302-109406<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnbilledContractsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>70
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113907168">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories (Schedule of Inventories) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterials', window );">Raw material</a></td>
<td class="nump">$ 111,187<span></span>
</td>
<td class="nump">$ 135,558<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcess', window );">Work-in-process</a></td>
<td class="nump">17,944<span></span>
</td>
<td class="nump">5,858<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Finished goods</a></td>
<td class="nump">47,523<span></span>
</td>
<td class="nump">39,256<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryGross', window );">Gross inventory</a></td>
<td class="nump">176,654<span></span>
</td>
<td class="nump">180,672<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryAdjustments', window );">Less reserves</a></td>
<td class="num">(6,294)<span></span>
</td>
<td class="num">(4,465)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventories</a></td>
<td class="nump">$ 170,360<span></span>
</td>
<td class="nump">$ 176,207<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_InventoryAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of inventory reserves for last-in first-out (LIFO) and other inventory valuation methods.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InventoryRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterials</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InventoryWorkInProcess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113346064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_InventoryRollForward', window );"><strong>Inventory [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryValuationReserves', window );">Beginning balance</a></td>
<td class="nump">$ 4,400<span></span>
</td>
<td class="nump">$ 4,161<span></span>
</td>
<td class="nump">$ 3,463<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory', window );">Excess, obsolete and slow moving inventory expense</a></td>
<td class="nump">1,582<span></span>
</td>
<td class="nump">215<span></span>
</td>
<td class="nump">355<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_InventoryValuationScrappedInventoryAndOtherAdjustments', window );">Scrapped inventory and other adjustments</a></td>
<td class="num">(197)<span></span>
</td>
<td class="num">(24)<span></span>
</td>
<td class="num">(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="Show.showAR( this, 'defref_us-gaap_InventoryValuationReserves', window );">Ending balance</a></td>
<td class="nump">$ 6,179<span></span>
</td>
<td class="nump">$ 4,400<span></span>
</td>
<td class="nump">$ 4,161<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_InventoryRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory [Roll Forward]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_InventoryRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_rock_InventoryValuationExcessObsoleteAndSlowMovingInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory valuation excess, obsolete, and slow-moving inventory</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_InventoryValuationExcessObsoleteAndSlowMovingInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_InventoryValuationScrappedInventoryAndOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory valuation scrapped inventory and other adjustments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_InventoryValuationScrappedInventoryAndOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InventoryValuationReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of valuation reserve for inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.BB)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryValuationReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>72
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113416128">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property, Plant, and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LandAndLandImprovements', window );">Land and land improvements</a></td>
<td class="nump">$ 4,704<span></span>
</td>
<td class="nump">$ 4,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="Show.showAR( this, 'defref_us-gaap_BuildingsAndImprovementsGross', window );">Building and improvements</a></td>
<td class="nump">43,416<span></span>
</td>
<td class="nump">42,526<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MachineryAndEquipmentGross', window );">Machinery and equipment</a></td>
<td class="nump">223,843<span></span>
</td>
<td class="nump">194,015<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConstructionInProgressGross', window );">Construction in progress</a></td>
<td class="nump">13,065<span></span>
</td>
<td class="nump">20,293<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant, and equipment, gross</a></td>
<td class="nump">285,028<span></span>
</td>
<td class="nump">261,468<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less: accumulated depreciation</a></td>
<td class="num">(175,444)<span></span>
</td>
<td class="num">(164,583)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant, and equipment, net</a></td>
<td class="nump">$ 109,584<span></span>
</td>
<td class="nump">$ 96,885<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: 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(14))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BuildingsAndImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BuildingsAndImprovementsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConstructionInProgressGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LandAndLandImprovements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation and depletion of real estate held for productive use and additions or improvements to real estate held for productive use, examples include, but are not limited to, walkways, driveways, fences, and parking lots. Excludes land held for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LandAndLandImprovements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_MachineryAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MachineryAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108664464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Narrative) (Details)<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"></th>
<th class="th" colspan="1"></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>Aug. 22, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 11, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Oct. 15, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Feb. 13, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jan. 15, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>business</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 512,363<span></span>
</td>
<td class="nump">$ 510,942<span></span>
</td>
<td class="nump">$ 514,279<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfBusinessesAcquired', window );">Number of businesses acquired | business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember', window );">Renewables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 188,030<span></span>
</td>
<td class="nump">188,680<span></span>
</td>
<td class="nump">192,527<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfBusinessesAcquired', window );">Number of businesses acquired | business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember', window );">Agtech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 83,599<span></span>
</td>
<td class="nump">85,132<span></span>
</td>
<td class="nump">84,622<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfBusinessesAcquired', window );">Number of businesses acquired | business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 209,056<span></span>
</td>
<td class="nump">$ 205,452<span></span>
</td>
<td class="nump">$ 205,452<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfBusinessesAcquired', window );">Number of businesses acquired | business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember', window );">Quality Aluminum Products</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Acquisition purchase price</a></td>
<td class="nump">$ 52,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 3,604<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember', window );">TerraSmart LLC</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Acquisition purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 223,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 140,997<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationMember', window );">Sunfig Corporation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Acquisition purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_ArchitecturalMailboxesLLCMember', window );">Architectural Mailboxes LLC</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Acquisition purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 26,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7,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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_DeltaSeparationsLLCMember', window );">Delta Separations, LLC</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Acquisition purchase price</a></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">$ 47,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 32,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_ThermoEnergySystemsMember', window );">Thermo Energy Systems</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Acquisition purchase price</a></td>
<td class="text">&#160;<span></span>
</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,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 19,100<span></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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6613-128477<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 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of 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="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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NumberOfBusinessesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of businesses acquired by the entity during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfBusinessesAcquired</td>
</tr>
<tr>
<td style="padding-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_StatementBusinessSegmentsAxis=rock_RenewablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember</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=rock_AgtechMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember</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=rock_ResidentialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember</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=rock_QualityAluminumProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember</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=rock_TerraSmartLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember</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=rock_SunfigCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationMember</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=rock_ArchitecturalMailboxesLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_ArchitecturalMailboxesLLCMember</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=rock_DeltaSeparationsLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_DeltaSeparationsLLCMember</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=rock_ThermoEnergySystemsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_ThermoEnergySystemsMember</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>74
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113863584">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisitions (Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Aug. 22, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Jan. 15, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 512,363<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 510,942<span></span>
</td>
<td class="nump">$ 514,279<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember', window );">Quality Aluminum Products</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,018<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital', window );">Working capital</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,759<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant, and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,486<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Acquired intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,813<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other liabilities</a></td>
<td class="num">(1,295)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,604<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Fair value of purchase consideration</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 52,085<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember', window );">TerraSmart LLC</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="nump">1,491<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital', window );">Working capital</a></td>
<td class="nump">5,569<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant, and equipment</a></td>
<td class="nump">11,446<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Acquired intangible assets</a></td>
<td class="nump">64,150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="nump">1,854<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other liabilities</a></td>
<td class="num">(1,640)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">140,997<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Fair value of purchase consideration</a></td>
<td class="nump">$ 223,867<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</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">$ 179<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital', window );">Working capital</a></td>
<td class="text">&#160;<span></span>
</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">(15,377)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant, and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,740<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Acquired intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">38,066<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,528<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,381<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other liabilities</a></td>
<td class="text">&#160;<span></span>
</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">(5,576)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</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,161<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Fair value of purchase consideration</a></td>
<td class="text">&#160;<span></span>
</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">$ 85,102<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Working Capital</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of intangible assets, excluding goodwill, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of property, plant, and equipment recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of 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="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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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=rock_QualityAluminumProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember</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=rock_TerraSmartLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember</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=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</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>75
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113848064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Schedule of Acquired Intangible 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, 2022 </div>
<div>USD ($)</div>
</th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember', window );">Quality Aluminum Products</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 14,700<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember', window );">Quality Aluminum Products | Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefinitelivedIntangibleAssetsAcquired', window );">Fair&#160;Value</a></td>
<td class="nump">2,800<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember', window );">Quality Aluminum Products | Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 11,900<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">12 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember', window );">TerraSmart LLC</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 64,150<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember', window );">TerraSmart LLC | Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefinitelivedIntangibleAssetsAcquired', window );">Fair&#160;Value</a></td>
<td class="nump">20,830<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember', window );">TerraSmart LLC | Technology</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 1,940<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">12 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember', window );">TerraSmart LLC | Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 35,110<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">12 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember', window );">TerraSmart LLC | Backlog</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 6,270<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">38,066<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefinitelivedIntangibleAssetsAcquired', window );">Fair&#160;Value</a></td>
<td class="nump">8,100<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 1,177<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Technology</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 8,345<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Technology | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Technology | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 18,480<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Customer relationships | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">11 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Customer relationships | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">13 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Non-compete agreements</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 1,036<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember', window );">Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. | Backlog</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair&#160;Value</a></td>
<td class="nump">$ 928<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted-Average Amortization Period</a></td>
<td class="text">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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 1<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_FinitelivedIntangibleAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinitelivedIntangibleAssetsAcquired1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IndefinitelivedIntangibleAssetsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in assets, excluding financial assets and goodwill, lacking physical substance with an indefinite life, from an acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefinitelivedIntangibleAssetsAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_QualityAluminumProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_TerraSmartLLCMember</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_TechnologyEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TechnologyEquipmentMember</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=rock_BacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=rock_BacklogMember</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=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</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_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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>76
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113575744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Acquisition Related Costs) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts', window );">Total acquisition related costs</a></td>
<td class="nump">$ 1,972<span></span>
</td>
<td class="nump">$ 949<span></span>
</td>
<td class="nump">$ 3,864<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts', window );">Total acquisition related costs</a></td>
<td class="nump">1,427<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">634<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts', window );">Total acquisition related costs</a></td>
<td class="nump">$ 545<span></span>
</td>
<td class="nump">$ 949<span></span>
</td>
<td class="nump">$ 3,230<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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationAcquisitionRelatedCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 23<br> -URI https://asc.fasb.org/extlink&amp;oid=123586518&amp;loc=d3e1043-128460<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAcquisitionRelatedCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</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>77
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327112498256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets (Schedule of Changes in Carrying Amount of Goodwill) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">$ 510,942<span></span>
</td>
<td class="nump">$ 514,279<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquired goodwill</a></td>
<td class="nump">3,604<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Adjustments to prior year acquisitions</a></td>
<td class="nump">904<span></span>
</td>
<td class="num">(2,110)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="num">(3,087)<span></span>
</td>
<td class="num">(1,227)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">512,363<span></span>
</td>
<td class="nump">510,942<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember', window );">Renewables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">188,680<span></span>
</td>
<td class="nump">192,527<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquired goodwill</a></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="Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Adjustments to prior year acquisitions</a></td>
<td class="nump">904<span></span>
</td>
<td class="num">(2,433)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="num">(1,554)<span></span>
</td>
<td class="num">(1,414)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">188,030<span></span>
</td>
<td class="nump">188,680<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">205,452<span></span>
</td>
<td class="nump">205,452<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquired goodwill</a></td>
<td class="nump">3,604<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Adjustments to prior year acquisitions</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">209,056<span></span>
</td>
<td class="nump">205,452<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember', window );">Agtech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">85,132<span></span>
</td>
<td class="nump">84,622<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquired goodwill</a></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="Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Adjustments to prior year acquisitions</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">323<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="num">(1,533)<span></span>
</td>
<td class="nump">187<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">83,599<span></span>
</td>
<td class="nump">85,132<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember', window );">Infrastructure</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">31,678<span></span>
</td>
<td class="nump">31,678<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquired goodwill</a></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="Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Adjustments to prior year acquisitions</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance at</a></td>
<td class="nump">$ 31,678<span></span>
</td>
<td class="nump">$ 31,678<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of 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="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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in 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="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 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&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 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=123586518&amp;loc=d3e961-128460<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillRollForward</td>
</tr>
<tr>
<td style="padding-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_StatementBusinessSegmentsAxis=rock_RenewablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember</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=rock_ResidentialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember</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=rock_AgtechMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember</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=rock_InfrastructureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember</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>78
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111472528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets (Narrative) (Details)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Oct. 31, 2021 </div>
<div>reporting_unit</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>reporting_unit</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>reporting_unit</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>reporting_unit</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillLineItems', window );"><strong>Goodwill [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss', window );">Accumulated impairment losses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 133,200,000<span></span>
</td>
<td class="nump">$ 133,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillImpairmentLoss', window );">Goodwill impairment</a></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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportingUnits', window );">Number of reporting units | reporting_unit</a></td>
<td class="nump">8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits', window );">Carrying amount in excess of fair value, number of reporting units | reporting_unit</a></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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration', window );">Impairment, Intangible Asset, Indefinite-Lived (Excluding Goodwill), Statement of Income or Comprehensive Income [Extensible Enumeration]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Goodwill and Intangible Asset Impairment<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillLineItems', window );"><strong>Goodwill [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill', window );">Impairment of indefinite-lived intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Reporting Unit, Carrying Amount in Excess of Fair Value, Number of Reporting Units</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_GoodwillImpairedAccumulatedImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated 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="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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: 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 (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillLineItems</td>
</tr>
<tr>
<td style="padding-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_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of income or comprehensive income that includes impairment of indefinite-lived intangible asset excluding goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of impairment loss resulting from write-down of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit to fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-109275<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NumberOfReportingUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportingUnits</td>
</tr>
<tr>
<td style="padding-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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</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>79
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111734368">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets (Schedule of Acquired Intangible Assets) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount, Finite-lived intangible assets</a></td>
<td class="nump">$ 157,107<span></span>
</td>
<td class="nump">$ 162,472<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AcquiredIntangibleAssetsTotal', window );">Total acquired intangible assets, Gross Carrying Amount</a></td>
<td class="nump">212,607<span></span>
</td>
<td class="nump">215,172<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization, Finite-lived intangible assets</a></td>
<td class="nump">75,081<span></span>
</td>
<td class="nump">73,668<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization', window );">Total acquired intangible assets, Accumulated Amortization</a></td>
<td class="nump">75,081<span></span>
</td>
<td class="nump">73,668<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount, Finite-lived intangible assets</a></td>
<td class="nump">5,448<span></span>
</td>
<td class="nump">5,521<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization, Finite-lived intangible assets</a></td>
<td class="nump">4,481<span></span>
</td>
<td class="nump">4,011<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_UnpatentedTechnologyMember', window );">Unpatented technology and patents</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount, Finite-lived intangible assets</a></td>
<td class="nump">34,163<span></span>
</td>
<td class="nump">38,474<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization, Finite-lived intangible assets</a></td>
<td class="nump">22,037<span></span>
</td>
<td class="nump">20,656<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount, Finite-lived intangible assets</a></td>
<td class="nump">115,125<span></span>
</td>
<td class="nump">108,591<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization, Finite-lived intangible assets</a></td>
<td class="nump">46,557<span></span>
</td>
<td class="nump">39,832<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Non-compete agreements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount, Finite-lived intangible assets</a></td>
<td class="nump">2,371<span></span>
</td>
<td class="nump">2,686<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization, Finite-lived intangible assets</a></td>
<td class="nump">2,006<span></span>
</td>
<td class="nump">1,969<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=rock_BacklogMember', window );">Backlog</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount, Finite-lived intangible assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">7,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization, Finite-lived intangible assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">7,200<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Gross Carrying Amount, Indefinite-lived intangible assets</a></td>
<td class="nump">55,500<span></span>
</td>
<td class="nump">52,700<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_IndefiniteLivedAccumulatedAmortization', window );">Accumulated Amortization, Indefinite-lived intangible assets</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_AcquiredIntangibleAssetsTotal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Acquired Intangible Assets, Total.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_AcquiredIntangibleAssetsTotal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_IndefiniteLivedAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indefinite-lived accumulated amortization.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_IndefiniteLivedAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total acquired intangible assets, accumulated amortization</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: 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(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</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_UnpatentedTechnologyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_UnpatentedTechnologyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=rock_BacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=rock_BacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</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>80
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113570736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets (Schedule of Impairment Charges) (Details)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill', window );">Impairment of indefinite-lived intangibles</a></td>
<td class="nump">$ 8.3<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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of impairment loss resulting from write-down of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit to fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-109275<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</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>81
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327118792192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets (Schedule of Amortization Expense) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of Intangible Assets</a></td>
<td class="nump">$ 11,584<span></span>
</td>
<td class="nump">$ 18,856<span></span>
</td>
<td class="nump">$ 9,663<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>82
<FILENAME>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108812896">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Related Intangible Assets (Schedule of Future Amortization Expense) (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2020</a></td>
<td class="nump">$ 11,102<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2021</a></td>
<td class="nump">10,922<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2022</a></td>
<td class="nump">10,782<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2023</a></td>
<td class="nump">9,370<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2024</a></td>
<td class="nump">$ 7,728<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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>83
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113852144">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued Expenses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Customer rebates</a></td>
<td class="nump">$ 16,768<span></span>
</td>
<td class="nump">$ 15,253<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccruedSharebasedCompensationCurrent', window );">Current portion of MSPP liabilities</a></td>
<td class="nump">2,267<span></span>
</td>
<td class="nump">2,947<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Insurance</a></td>
<td class="nump">6,440<span></span>
</td>
<td class="nump">7,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Accrued warranties</a></td>
<td class="nump">6,251<span></span>
</td>
<td class="nump">5,686<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccruedCustomerRebatesCurrent', window );">Compensation</a></td>
<td class="nump">17,010<span></span>
</td>
<td class="nump">15,293<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedInsuranceCurrent', window );">Interest and taxes</a></td>
<td class="nump">5,696<span></span>
</td>
<td class="nump">5,463<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current operating lease liability</a></td>
<td class="nump">8,620<span></span>
</td>
<td class="nump">7,239<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Unearned revenue</a></td>
<td class="nump">4,572<span></span>
</td>
<td class="nump">3,681<span></span>
</td>
<td class="nump">$ 21,325<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">6,097<span></span>
</td>
<td class="nump">5,121<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent', window );">Total accrued expenses</a></td>
<td class="nump">$ 73,721<span></span>
</td>
<td class="nump">$ 67,993<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Accrued expenses<span></span>
</td>
<td class="text">Accrued expenses<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_rock_AccruedCustomerRebatesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued customer rebates, current</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_AccruedCustomerRebatesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_AccruedSharebasedCompensationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued Share-based Compensation, Current</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_AccruedSharebasedCompensationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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)(15)(b)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedInsuranceCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedInsuranceCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&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.15(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes current operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918631-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12524-110249<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.20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 460<br> -SubTopic 10<br> -Section 25<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126907644&amp;loc=d3e11281-110244<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111311456">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Debt (Schedule of Long-term Debt) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsNet', window );">Less unamortized debt issuance costs</a></td>
<td class="num">$ (2,238)<span></span>
</td>
<td class="num">$ (719)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total debt</a></td>
<td class="nump">88,762<span></span>
</td>
<td class="nump">23,781<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit Facility | 2019 Senior Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Long term debt gross</a></td>
<td class="nump">$ 91,000<span></span>
</td>
<td class="nump">$ 24,500<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=123466204&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-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_DeferredFinanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<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 https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<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)(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<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 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 6: 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 1D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember</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_DebtInstrumentAxis=rock_A2019SeniorCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rock_A2019SeniorCreditAgreementMember</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>85
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108282608">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Debt (Narrative) (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 08, 2022 </div>
<div>USD ($) </div>
<div>debtCovenant</div>
</th>
<th class="th">
<div>Jan. 24, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Carrying value of outstanding debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 88,762,000<span></span>
</td>
<td class="nump">$ 23,781,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Applicable rate through March 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Annual commitment fee (as a percentage)</a></td>
<td class="nump">0.20%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Base Rate | Applicable rate through March 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Initial applicable margin</a></td>
<td class="nump">0.125%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Secured Overnight Financing Rate (SOFR) | Applicable rate through March 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Initial applicable margin</a></td>
<td class="nump">1.125%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Minimum | Applicable rate after April 1, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Annual commitment fee (as a percentage)</a></td>
<td class="nump">0.20%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Minimum | Base Rate | Applicable rate after April 1, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Initial applicable margin</a></td>
<td class="nump">0.125%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Minimum | Secured Overnight Financing Rate (SOFR) | Applicable rate after April 1, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Initial applicable margin</a></td>
<td class="nump">1.125%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Maximum | Applicable rate after April 1, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Annual commitment fee (as a percentage)</a></td>
<td class="nump">0.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Maximum | Base Rate | Applicable rate after April 1, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Initial applicable margin</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember', window );">2022 Senior Credit Agreement | Maximum | Secured Overnight Financing Rate (SOFR) | Applicable rate after April 1, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Initial applicable margin</a></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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_SeniorCreditAgreementMember', window );">Senior Credit Agreement | Standby Letters of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity under the revolving credit facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rock_SeniorCreditAgreementMember', window );">Senior Credit Agreement | Revolving Credit Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Carrying value of outstanding debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">91,000,000<span></span>
</td>
<td class="nump">24,500,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Availability amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 304,500,000<span></span>
</td>
<td class="nump">$ 369,300,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit Facility | 2022 Senior Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity', window );">Current borrowing capacity</a></td>
<td class="nump">$ 400,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity under the revolving credit facility</a></td>
<td class="nump">$ 700,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DebtInstrumentNumberOfDebtCovenants', window );">Number of debt covenants | debtCovenant</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit Facility | 2019 Senior Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity', window );">Current borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity under the revolving credit facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 700,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit Facility | 2019 Senior Credit Agreement | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCommitmentFeePercentage', window );">Annual commitment fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.15%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit Facility | 2019 Senior Credit Agreement | Minimum | LIBOR</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">LIBOR floor, plus</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.125%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit Facility | 2019 Senior Credit Agreement | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCommitmentFeePercentage', window );">Annual commitment fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit Facility | 2019 Senior Credit Agreement | Maximum | LIBOR</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">LIBOR floor, plus</a></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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_MediumTermNotesMember', window );">Term Loan | 2022 Senior Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Term loan (up to)</a></td>
<td class="nump">$ 300,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_MediumTermNotesMember', window );">Term Loan | 2019 Senior Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Term loan (up to)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_DebtInstrumentNumberOfDebtCovenants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Number of Debt Covenants</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DebtInstrumentNumberOfDebtCovenants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<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)(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<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 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 6: 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 1D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rock_A2022SeniorCreditAgreementMember</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_rock_DebtInstrumentApplicableRatePeriodAxis=rock_ApplicableRatePeriod1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DebtInstrumentApplicableRatePeriodAxis=rock_ApplicableRatePeriod1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_BaseRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_BaseRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=rock_SecuredOvernightFinancingRateSOFRMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=rock_SecuredOvernightFinancingRateSOFRMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_DebtInstrumentApplicableRatePeriodAxis=rock_ApplicableRatePeriod2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DebtInstrumentApplicableRatePeriodAxis=rock_ApplicableRatePeriod2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rock_SeniorCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rock_SeniorCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=us-gaap_StandbyLettersOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_StandbyLettersOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember</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_DebtInstrumentAxis=rock_A2019SeniorCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rock_A2019SeniorCreditAgreementMember</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_LondonInterbankOfferedRateLIBORMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember</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=us-gaap_MediumTermNotesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_MediumTermNotesMember</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>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327115394336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt (Schedule of Cash Paid for Interest) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAbstract', window );"><strong>Long-Term Debt, Unclassified [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest expense, net</a></td>
<td class="num">$ (4,047)<span></span>
</td>
<td class="num">$ (1,639)<span></span>
</td>
<td class="num">$ (703)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeOther', window );">Interest income</a></td>
<td class="nump">174<span></span>
</td>
<td class="nump">269<span></span>
</td>
<td class="nump">276<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_NoncashInterestAdjustment', window );">Other non-cash adjustments</a></td>
<td class="num">(679)<span></span>
</td>
<td class="num">(345)<span></span>
</td>
<td class="num">(345)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Cash paid for interest</a></td>
<td class="nump">$ 3,542<span></span>
</td>
<td class="nump">$ 1,563<span></span>
</td>
<td class="nump">$ 634<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_NoncashInterestAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Noncash Interest Adjustment</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_NoncashInterestAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InterestIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of operating interest income (expense).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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.10)<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestIncomeOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest income earned from interest bearing assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermDebtAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAbstract</td>
</tr>
<tr>
<td style="padding-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>87
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108886928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension and Other Postretirement Benefits (Schedule of Total Expense for All Retirement Plans) (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>plan</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsPeriodExpense', window );">Total retirement plan expense</a></td>
<td class="nump">$ 4,001<span></span>
</td>
<td class="nump">$ 3,685<span></span>
</td>
<td class="nump">$ 2,824<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=rock_A401kPlanMember', window );">401(k) plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsPeriodExpense', window );">Total retirement plan expense</a></td>
<td class="nump">3,580<span></span>
</td>
<td class="nump">3,196<span></span>
</td>
<td class="nump">2,403<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Multiemployer and other defined benefit and pension plans</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsPeriodExpense', window );">Total retirement plan expense</a></td>
<td class="nump">$ 79<span></span>
</td>
<td class="nump">78<span></span>
</td>
<td class="nump">70<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_RetirementPlanNumberOfPlans', window );">Number of plans | plan</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember', window );">Other Postretirement Benefits</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsPeriodExpense', window );">Total retirement plan expense</a></td>
<td class="nump">$ 342<span></span>
</td>
<td class="nump">$ 411<span></span>
</td>
<td class="nump">$ 351<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_RetirementPlanNumberOfPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Retirement Plan, Number Of Plans</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_RetirementPlanNumberOfPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_DefinedBenefitPlanDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-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_PostemploymentBenefitsPeriodExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period expense related to postemployment benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PostemploymentBenefitsPeriodExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RetirementPlanTypeAxis=rock_A401kPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=rock_A401kPlanMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</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>88
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111454480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension and Other Postretirement Benefits (Changes in the Accumulated Postretirement 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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward', window );"><strong>Defined Benefit Plan, Change in Benefit Obligation [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAmendments', window );">Plan amendments</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 162<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember', window );">Other Postretirement Benefits</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward', window );"><strong>Defined Benefit Plan, Change in Benefit Obligation [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanBenefitObligation', window );">Projected benefit obligation at</a></td>
<td class="nump">6,202<span></span>
</td>
<td class="nump">6,443<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanServiceCost', window );">Service cost</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 10<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanInterestCost', window );">Interest cost</a></td>
<td class="nump">127<span></span>
</td>
<td class="nump">125<span></span>
</td>
<td class="nump">172<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanActuarialGainLoss', window );">Actuarial losses (gains)</a></td>
<td class="num">(1,784)<span></span>
</td>
<td class="num">(200)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid', window );">Benefits paid</a></td>
<td class="num">(316)<span></span>
</td>
<td class="num">(328)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanBenefitObligation', window );">Projected benefit obligation at</a></td>
<td class="nump">4,229<span></span>
</td>
<td class="nump">6,202<span></span>
</td>
<td class="nump">$ 6,443<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair value of plan assets</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="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFundedStatusOfPlan', window );">Under funded status</a></td>
<td class="num">(4,229)<span></span>
</td>
<td class="num">(6,202)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax', window );">Unamortized prior service cost</a></td>
<td class="nump">352<span></span>
</td>
<td class="nump">412<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax', window );">Unrecognized actuarial gain</a></td>
<td class="num">(278)<span></span>
</td>
<td class="nump">1,530<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet', window );">Net amount recognized</a></td>
<td class="num">$ (4,155)<span></span>
</td>
<td class="num">$ (4,260)<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_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before 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="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 (j)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of accumulated other comprehensive (income) loss for cost (credit) of benefit change attributable to participants' prior service from plan amendment or plan initiation of defined benefit plan, that has not been recognized in net periodic benefit cost (credit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (j)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanActuarialGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) 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="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 (a)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DefinedBenefitPlanAmountsRecognizedInBalanceSheet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset (liability), recognized in statement of financial position, for defined benefit pension and other postretirement plans.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=d3e1703-114919<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="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 (a)(6)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 60<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=6414203&amp;loc=d3e39716-114964<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DefinedBenefitPlanChangeInBenefitObligationRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward</td>
</tr>
<tr>
<td style="padding-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_DefinedBenefitPlanFairValueOfPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset 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="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 https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123450688&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 (d)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="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 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=d3e1703-114919<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 (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost recognized for passage of time related to defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=123447040&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 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<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 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-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 (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DefinedBenefitPlanPlanAmendments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in benefit obligation of defined benefit plan from change in terms of existing plan or initiation of new plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(7)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanPlanAmendments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanServiceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost for actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123450688&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)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-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 1<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: 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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanServiceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</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>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111613888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension and Other Postretirement Benefits (Amounts Recognized in the Consolidated Financial Statements) (Details) - Other Postretirement Benefits - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems', window );"><strong>Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities', window );">Accrued post retirement liability: Current portion</a></td>
<td class="nump">$ 353<span></span>
</td>
<td class="nump">$ 358<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent', window );">Accrued post retirement liability: Long term portion</a></td>
<td class="nump">3,876<span></span>
</td>
<td class="nump">5,844<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax', window );">Pre-tax accumulated other comprehensive loss &#8211; unamortized post-retirement healthcare costs</a></td>
<td class="nump">74<span></span>
</td>
<td class="nump">1,942<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet', window );">Net amount recognized</a></td>
<td class="nump">$ 4,155<span></span>
</td>
<td class="nump">$ 4,260<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_DefinedBenefitPlanAmountsRecognizedInBalanceSheet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset (liability), recognized in statement of financial position, for defined benefit pension and other postretirement plans.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=d3e1703-114919<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, after reclassification adjustment, of increase (decrease) in accumulated other comprehensive income from gain (loss) of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&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)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&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 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems</td>
</tr>
<tr>
<td style="padding-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_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liability, recognized in statement of financial position, for defined benefit pension and other postretirement plans, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=d3e1731-114919<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 (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<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(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=d3e1703-114919<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liability, recognized in statement of financial position, for defined benefit pension and other postretirement plans, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=d3e1703-114919<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 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=d3e1731-114919<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 (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</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>90
<FILENAME>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327106844944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension and Other Postretirement Benefits (Components of Net Periodic Postretirement 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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems', window );"><strong>Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [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="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1', window );">Ultimate healthcare trend rates</a></td>
<td class="nump">4.00%<span></span>
</td>
<td class="nump">3.80%<span></span>
</td>
<td class="nump">3.80%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember', window );">Other Postretirement Benefits</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems', window );"><strong>Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanServiceCost', window );">Service cost</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 10<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanInterestCost', window );">Interest cost</a></td>
<td class="nump">127<span></span>
</td>
<td class="nump">125<span></span>
</td>
<td class="nump">172<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit', window );">Amortization of unrecognized prior service cost</a></td>
<td class="nump">60<span></span>
</td>
<td class="nump">44<span></span>
</td>
<td class="nump">44<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses', window );">Loss amortization (2)</a></td>
<td class="nump">24<span></span>
</td>
<td class="nump">113<span></span>
</td>
<td class="nump">64<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost', window );">Net periodic pension cost</a></td>
<td class="nump">$ 211<span></span>
</td>
<td class="nump">$ 282<span></span>
</td>
<td class="nump">$ 290<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate', window );">Discount rate</a></td>
<td class="nump">4.80%<span></span>
</td>
<td class="nump">2.40%<span></span>
</td>
<td class="nump">2.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="Show.showAR( this, 'defref_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65', window );">Annual rate of increase in the per capita cost of: Medical costs before age 65</a></td>
<td class="nump">7.80%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65', window );">Annual rate of increase in the per capita cost of: Medical costs after age 65</a></td>
<td class="nump">4.50%<span></span>
</td>
<td class="nump">4.50%<span></span>
</td>
<td class="nump">4.50%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts', window );">Annual rate of increase in the per capita cost of: Prescription drug costs</a></td>
<td class="nump">7.80%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs After Age 65</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs Before Age 65</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Prescription Drug Costs</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) recognized in net periodic benefit (cost) credit of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<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)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-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 6<br> -Subparagraph (a)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of prior service cost (credit) recognized in net periodic benefit cost (credit) of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&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)(5)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-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 6<br> -Subparagraph (a)(5)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average 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="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 (k)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanInterestCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost recognized for passage of time related to defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=123447040&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 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<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 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-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 (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of net periodic benefit cost (credit) for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<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 55<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<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 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DefinedBenefitPlanServiceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost for actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 https://asc.fasb.org/extlink&amp;oid=123450688&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)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-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 1<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: 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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanServiceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanUltimateHealthCareCostTrendRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Ultimate trend rate for health care cost for defined benefit postretirement plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (l)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems</td>
</tr>
<tr>
<td style="padding-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=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</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>91
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108911744">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Pension and Other Postretirement Benefits (Expected Benefit Payments from the Plan) (Details) - Unamortized Post-Retirement Health Care Costs<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems', window );"><strong>Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 353,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo', window );">2024</a></td>
<td class="nump">357,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree', window );">2025</a></td>
<td class="nump">369,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour', window );">2026</a></td>
<td class="nump">359,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive', window );">2027</a></td>
<td class="nump">355,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter', window );">Years 2028 - 2032</a></td>
<td class="nump">$ 1,649,000<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_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of benefit for defined benefit plan expected to be paid in five fiscal years after fifth fiscal year following current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of benefit for defined benefit plan expected to be paid in next fiscal year following current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of benefit for defined benefit plan expected to be paid in fifth fiscal year following current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of benefit for defined benefit plan expected to be paid in fourth fiscal year following current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of benefit for defined benefit plan expected to be paid in third fiscal year following current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of benefit for defined benefit plan expected to be paid in second fiscal year following current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems</td>
</tr>
<tr>
<td style="padding-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=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</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>92
<FILENAME>R77.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327109088976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Income (Loss) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [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="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1', window );">Balance at beginning of period</a></td>
<td class="num">$ (607)<span></span>
</td>
<td class="num">$ (3,298)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1', window );">Balance at end of period</a></td>
<td class="num">(3,777)<span></span>
</td>
<td class="num">(607)<span></span>
</td>
<td class="num">$ (3,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="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossTaxAbstract', window );"><strong>Tax (Benefit) Expense</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccumulatedOtherComprehensiveIncomeLossTax', window );">Balance at beginning of period</a></td>
<td class="num">(794)<span></span>
</td>
<td class="num">(837)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossTax', window );">Tax (Benefit) Expense</a></td>
<td class="nump">449<span></span>
</td>
<td class="nump">43<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccumulatedOtherComprehensiveIncomeLossTax', window );">Balance at end of period</a></td>
<td class="num">(345)<span></span>
</td>
<td class="num">(794)<span></span>
</td>
<td class="num">(837)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AOCIAttributableToParentNetOfTaxRollForward', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Balance at beginning of period</a></td>
<td class="nump">187<span></span>
</td>
<td class="num">(2,461)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax', window );">Minimum post retirement benefit plan adjustments</a></td>
<td class="nump">1,403<span></span>
</td>
<td class="nump">136<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">3,619<span></span>
</td>
<td class="num">(2,648)<span></span>
</td>
<td class="num">(2,930)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Balance at end of period</a></td>
<td class="num">(3,432)<span></span>
</td>
<td class="nump">187<span></span>
</td>
<td class="num">(2,461)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember', window );">Foreign Currency Translation Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1', window );">Balance at beginning of period</a></td>
<td class="nump">1,640<span></span>
</td>
<td class="num">(872)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeTax', window );">Other Comprehensive Income (Loss), before Tax</a></td>
<td class="num">(5,022)<span></span>
</td>
<td class="nump">2,512<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1', window );">Balance at end of period</a></td>
<td class="num">(3,382)<span></span>
</td>
<td class="nump">1,640<span></span>
</td>
<td class="num">(872)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossTaxAbstract', window );"><strong>Tax (Benefit) Expense</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossTax', window );">Tax (Benefit) Expense</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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AOCIAttributableToParentNetOfTaxRollForward', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="num">(5,022)<span></span>
</td>
<td class="nump">2,512<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember', window );">Minimum post retirement benefit plan adjustments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [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="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1', window );">Balance at beginning of period</a></td>
<td class="num">(2,247)<span></span>
</td>
<td class="num">(2,426)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeTax', window );">Other Comprehensive Income (Loss), before Tax</a></td>
<td class="num">(1,852)<span></span>
</td>
<td class="num">(179)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1', window );">Balance at end of period</a></td>
<td class="num">$ (395)<span></span>
</td>
<td class="num">$ (2,247)<span></span>
</td>
<td class="num">$ (2,426)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_AccumulatedOtherComprehensiveIncomeLossTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated Other Comprehensive Income (Loss), Tax</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_AccumulatedOtherComprehensiveIncomeLossTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AOCIAttributableToParentNetOfTaxRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AOCIAttributableToParentNetOfTaxRollForward</td>
</tr>
<tr>
<td style="padding-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_AccumulatedOtherComprehensiveIncomeLossBeforeTax1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of increase (decrease) in accumulated equity from transactions and other events and circumstances from non-owner sources, including portion attributable to noncontrolling interest. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners (distributions to owners).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccumulatedOtherComprehensiveIncomeLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems</td>
</tr>
<tr>
<td style="padding-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_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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(30)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before tax, after reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=120400993&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 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33775-111570<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&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 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 12: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of reclassification adjustment from accumulated other comprehensive (income) loss for net periodic benefit cost (credit) of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e689-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 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<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 17A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL34724391-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) allocated to other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e39076-109324<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 4: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 https://asc.fasb.org/extlink&amp;oid=126953954&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 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e640-108580<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossTaxAbstract</td>
</tr>
<tr>
<td style="padding-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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>93
<FILENAME>R78.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108461776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Narrative) (Details) - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>May 04, 2022</div></th>
<th class="th"><div>May 03, 2022</div></th>
<th class="th"><div>May 04, 2018</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted (in 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_MarketPriceOfCommonStockPerShare', window );">Market price of common stock, per share</a></td>
<td class="nump">$ 45.88<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized compensation cost</a></td>
<td class="nump">$ 9.3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average cost recognition period, in years</a></td>
<td class="text">2 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccruedEquityBasedCompensation', window );">Accrued equity based compensation</a></td>
<td class="nump">$ 15.4<span></span>
</td>
<td class="nump">$ 22.6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Typical vesting period, in years</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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Shares awarded (in shares)</a></td>
<td class="nump">108,464<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited in period (in shares)</a></td>
<td class="nump">50,208<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Performance stock units outstanding (in shares)</a></td>
<td class="nump">211,368<span></span>
</td>
<td class="nump">363,474<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance stock units (1) | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod', window );">Award performance period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rock_PerformanceSharesMarketConditionMember', window );">Performance Shares, Market Condition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Shares awarded (in shares)</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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Shares awarded (in shares)</a></td>
<td class="nump">132,430<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited in period (in shares)</a></td>
<td class="nump">17,930<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Performance stock units outstanding (in shares)</a></td>
<td class="nump">235,370<span></span>
</td>
<td class="nump">204,584<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccruedEquityBasedCompensation', window );">Accrued equity based compensation</a></td>
<td class="nump">$ 13.4<span></span>
</td>
<td class="nump">$ 20.7<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_A2018PlanMember', window );">2018 Plan | Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Number of shares authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,000,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_TwoThousandEighteenEquityIncentivePlanMember', window );">2015 Equity Incentive Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of shares available for issuance under the Plan</a></td>
<td class="nump">326,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_TwoThousandFifteenEquityIncentivePlanMember', window );">2015 Equity Incentive Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of shares available for issuance under the Plan</a></td>
<td class="nump">80,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_NonEmployeeDirectorsPlanMember', window );">Non-Employee Directors Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of shares available for issuance under the Plan</a></td>
<td class="nump">101,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_NonEmployeeDirectorsPlanMember', window );">Non-Employee Directors Plan | Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Number of shares authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_ManagementStockPurchasePlanMember', window );">Management Stock Purchase Plan | Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod', window );">Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period</a></td>
<td class="text">200 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=rock_AccruedExpensesCurrentMember', window );">Accrued Expenses, Current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccruedEquityBasedCompensation', window );">Accrued equity based compensation</a></td>
<td class="nump">$ 2.3<span></span>
</td>
<td class="nump">2.9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=rock_NonCurrentLiabilitiesMember', window );">Non Current Liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_AccruedEquityBasedCompensation', window );">Accrued equity based compensation</a></td>
<td class="nump">$ 13.1<span></span>
</td>
<td class="nump">$ 19.7<span></span>
</td>
<td class="text">&#160;<span></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_rock_AccruedEquityBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued Equity Based Compensation</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_AccruedEquityBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_MarketPriceOfCommonStockPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Market price of common stock per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_MarketPriceOfCommonStockPerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Award Performance Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=rock_PerformanceSharesMarketConditionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=rock_PerformanceSharesMarketConditionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=rock_A2018PlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_A2018PlanMember</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_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_CommonStockMember</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=rock_TwoThousandEighteenEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_TwoThousandEighteenEquityIncentivePlanMember</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=rock_TwoThousandFifteenEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_TwoThousandFifteenEquityIncentivePlanMember</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=rock_NonEmployeeDirectorsPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_NonEmployeeDirectorsPlanMember</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=rock_ManagementStockPurchasePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_ManagementStockPurchasePlanMember</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=rock_AccruedExpensesCurrentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=rock_AccruedExpensesCurrentMember</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=rock_NonCurrentLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=rock_NonCurrentLiabilitiesMember</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>94
<FILENAME>R79.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113828224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Summary of Compensation Expense Connection with Awards) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans', window );">Expense recognized under the Prior Plan</a></td>
<td class="nump">$ 19<span></span>
</td>
<td class="nump">$ 29<span></span>
</td>
<td class="nump">$ 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="Show.showAR( this, 'defref_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation', window );">Expense recognized under the Non-Employee Directors Plan</a></td>
<td class="nump">770<span></span>
</td>
<td class="nump">840<span></span>
</td>
<td class="nump">760<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Total stock compensation expense</a></td>
<td class="nump">8,334<span></span>
</td>
<td class="nump">8,652<span></span>
</td>
<td class="nump">8,173<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Tax benefits recognized related to stock compensation expense</a></td>
<td class="nump">2,175<span></span>
</td>
<td class="nump">2,189<span></span>
</td>
<td class="nump">2,272<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_A2015PlanMember', window );">2015 Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan', window );">Expense recognized under the Plan</a></td>
<td class="nump">1,617<span></span>
</td>
<td class="nump">1,186<span></span>
</td>
<td class="nump">1,932<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_A2018PlanMember', window );">2018 Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan', window );">Expense recognized under the Plan</a></td>
<td class="nump">$ 5,928<span></span>
</td>
<td class="nump">$ 6,597<span></span>
</td>
<td class="nump">$ 5,441<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-Based Goods and Nonemployee Services Transaction, Share-based Compensation</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock Compensation Expense Recognized Under Equity Incentive Plan</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_StockCompensationExpenseRecognizedUnderTerminatedPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock compensation expense recognized under terminated plans.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_StockCompensationExpenseRecognizedUnderTerminatedPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax benefit for recognition of expense of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-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_PlanNameAxis=rock_A2015PlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_A2015PlanMember</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=rock_A2018PlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_A2018PlanMember</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>R80.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327107380384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Schedule of Number of Awards and Weighted Average Grant Date Fair Value) (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rock_DeferredStockUnitsMember', window );">Deferred Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">2,460<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 42.69<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">15,652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 42.49<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">132,430<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 43.92<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">108,464<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 47.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2019Member', window );">2019 | Deferred Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">2,460<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 42.69<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2019Member', window );">2019 | Common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">15,652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 42.49<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2019Member', window );">2019 | Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">132,430<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 43.92<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2019Member', window );">2019 | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="nump">108,464<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="nump">$ 47.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2018Member', window );">2018 | Deferred Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 83.58<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2018Member', window );">2018 | Common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,512<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 83.58<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2018Member', window );">2018 | Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">72,243<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 79.28<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2018Member', window );">2018 | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">62,778<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 87.84<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2017Member', window );">2017 | Deferred Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,402<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 45.98<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2017Member', window );">2017 | Common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,134<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 45.98<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2017Member', window );">2017 | Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">81,397<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 56.81<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=rock_A2017Member', window );">2017 | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number&#160;of Awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">160,426<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant&#160;Date Fair Value (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 55.98<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-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_AwardTypeAxis=rock_DeferredStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=rock_DeferredStockUnitsMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_AwardDateAxis=rock_A2019Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardDateAxis=rock_A2019Member</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_AwardDateAxis=rock_A2018Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardDateAxis=rock_A2018Member</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_AwardDateAxis=rock_A2017Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardDateAxis=rock_A2017Member</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>96
<FILENAME>R81.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327109092560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Summary of Ranges of Outstanding and Exercisable Options) (Details) - $ / shares<br></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, 2022</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2021</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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Share-based Payment Arrangement, Option, Exercise Price Range [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options Outstanding</a></td>
<td class="nump">5,000<span></span>
</td>
<td class="nump">41,500<span></span>
</td>
<td class="nump">5,000<span></span>
</td>
<td class="nump">117,409<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Life (in&#160;years)</a></td>
<td class="text">4 years 3 months 3 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 14.73<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=rock_ExercisePriceRangeOneMember', window );">$39.55</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Share-based Payment Arrangement, Option, Exercise Price Range [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Exercise Price Range, Lower Range Limit</a></td>
<td class="nump">$ 39.55<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options Outstanding</a></td>
<td class="nump">5,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Life (in&#160;years)</a></td>
<td class="text">4 years 3 months 3 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price</a></td>
<td class="nump">$ 39.55<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options Exercisable</a></td>
<td class="nump">5,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Weighted Average Exercise Price</a></td>
<td class="nump">$ 39.55<span></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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=rock_ExercisePriceRangeOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=rock_ExercisePriceRangeOneMember</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>97
<FILENAME>R82.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327106830640">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Summary of Stock Option Transactions) (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Options (in shares):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Beginning balance (in shares)</a></td>
<td class="nump">5,000<span></span>
</td>
<td class="nump">41,500<span></span>
</td>
<td class="nump">117,409<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(75,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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Forfeited (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(36,500)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Ending balance (in shares)</a></td>
<td class="nump">5,000<span></span>
</td>
<td class="nump">5,000<span></span>
</td>
<td class="nump">41,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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted Average Exercise Price (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Begininng balance (in dollars per share)</a></td>
<td class="nump">$ 39.55<span></span>
</td>
<td class="nump">$ 29.38<span></span>
</td>
<td class="nump">$ 19.91<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14.73<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Forfeited (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27.99<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Ending balance (in dollars per share)</a></td>
<td class="nump">$ 39.55<span></span>
</td>
<td class="nump">$ 39.55<span></span>
</td>
<td class="nump">$ 29.38<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Life (in&#160;years)</a></td>
<td class="text">4 years 3 months 3 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Aggregate Intrinsic&#160;Value</a></td>
<td class="nump">$ 31,650<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares 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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=120397183&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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=120391452&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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>98
<FILENAME>R83.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327107226624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Summary of Information about Restricted Stock Units and Weighted Average Grant Date Fair Value) (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved', window );">Shares for which performance condition was not achieved (in shares)</a></td>
<td class="nump">55,959<span></span>
</td>
<td class="nump">9,250<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Restricted Stock Units / Restricted Stock (in shares)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at beginning of period (in shares)</a></td>
<td class="nump">204,584<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">132,430<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod', window );">Adjustments (in shares)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(83,714)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited (in shares)</a></td>
<td class="num">(17,930)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at end of period (in shares)</a></td>
<td class="nump">235,370<span></span>
</td>
<td class="nump">204,584<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at beginning of period (in USD per share)</a></td>
<td class="nump">$ 52.90<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in USD per share)</a></td>
<td class="nump">43.92<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue', window );">Adjustments (in USD per share)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in USD per share)</a></td>
<td class="nump">45.77<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited (in USD per share)</a></td>
<td class="nump">59.62<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at end of period (in USD per share)</a></td>
<td class="nump">$ 49.87<span></span>
</td>
<td class="nump">$ 52.90<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Restricted Stock Units / Restricted Stock (in shares)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at beginning of period (in shares)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">15,652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod', window );">Adjustments (in shares)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(15,652)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited (in shares)</a></td>
<td class="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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at end of period (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at beginning of period (in USD per share)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in USD per share)</a></td>
<td class="nump">42.49<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue', window );">Adjustments (in USD per share)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in USD per share)</a></td>
<td class="nump">42.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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited (in USD per share)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at end of period (in USD per share)</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="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Restricted Stock Units / Restricted Stock (in shares)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at beginning of period (in shares)</a></td>
<td class="nump">363,474<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">108,464<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod', window );">Adjustments (in shares)</a></td>
<td class="num">(65,209)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(145,153)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited (in shares)</a></td>
<td class="num">(50,208)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at end of period (in shares)</a></td>
<td class="nump">211,368<span></span>
</td>
<td class="nump">363,474<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at beginning of period (in USD per share)</a></td>
<td class="nump">$ 55.44<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in USD per share)</a></td>
<td class="nump">47.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="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue', window );">Adjustments (in USD per share)</a></td>
<td class="nump">82.75<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in USD per share)</a></td>
<td class="nump">41.28<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited (in USD per share)</a></td>
<td class="nump">61.51<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at end of period (in USD per share)</a></td>
<td class="nump">$ 50.96<span></span>
</td>
<td class="nump">$ 55.44<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rock_DeferredStockUnitsMember', window );">Deferred Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Restricted Stock Units / Restricted Stock (in shares)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at beginning of period (in shares)</a></td>
<td class="nump">52,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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">2,460<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod', window );">Adjustments (in shares)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(14,582)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited (in shares)</a></td>
<td class="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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Balance at end of period (in shares)</a></td>
<td class="nump">40,350<span></span>
</td>
<td class="nump">52,472<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at beginning of period (in USD per share)</a></td>
<td class="nump">$ 43.99<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in USD per share)</a></td>
<td class="nump">42.69<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue', window );">Adjustments (in USD per share)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in USD per share)</a></td>
<td class="nump">40.53<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited (in USD per share)</a></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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance at end of period (in USD per share)</a></td>
<td class="nump">$ 45.16<span></span>
</td>
<td class="nump">$ 43.99<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent', window );">Percent of grants awarded based on target threshold</a></td>
<td class="nump">0.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="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod', window );">Award performance period</a></td>
<td class="text">&#160;<span></span>
</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="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent', window );">Percent of grants awarded based on target threshold</a></td>
<td class="nump">200.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="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod', window );">Award performance period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_TwoThousandEighteenEquityIncentivePlanMember', window );">2015 Equity Incentive Plan | Gross Profit Threshold | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod', window );">Award performance period</a></td>
<td class="text">3 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="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_TwoThousandEighteenEquityIncentivePlanMember', window );">2015 Equity Incentive Plan | Total Shareholder Return | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod', window );">Award performance period</a></td>
<td class="text">3 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="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rock_A2018PlanMember', window );">2018 Plan | Return On Invested Capital | Performance stock units (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value (in dollars per share)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod', window );">Award performance period</a></td>
<td class="text">1 year<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_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Performance Conditions Not Achieved</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Weighted Average Grant Date Fair Value</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Award Performance Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other Than Options, Grants Based On Targeted Thresholds, Percent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=rock_DeferredStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=rock_DeferredStockUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=rock_TwoThousandEighteenEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_TwoThousandEighteenEquityIncentivePlanMember</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_MeasurementInputTypeAxis=rock_SharebasedCompensationMeasurementGrossProfitThresholdMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MeasurementInputTypeAxis=rock_SharebasedCompensationMeasurementGrossProfitThresholdMember</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_MeasurementInputTypeAxis=rock_SharebasedCompensationMeasurementTotalShareholderReturnMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MeasurementInputTypeAxis=rock_SharebasedCompensationMeasurementTotalShareholderReturnMember</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=rock_A2018PlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=rock_A2018PlanMember</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_MeasurementInputTypeAxis=rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MeasurementInputTypeAxis=rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember</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>99
<FILENAME>R84.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327109097568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Aggregate intrinsic value of options exercised</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 2,103<span></span>
</td>
<td class="nump">$ 3,812<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue', window );">Grant date fair value</a></td>
<td class="nump">3,920<span></span>
</td>
<td class="nump">6,320<span></span>
</td>
<td class="nump">11,851<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue', window );">Grant date fair value</a></td>
<td class="nump">665<span></span>
</td>
<td class="nump">370<span></span>
</td>
<td class="nump">190<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rock_PerformanceStockUnitsMember', window );">Performance Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue', window );">Grant date fair value</a></td>
<td class="nump">6,729<span></span>
</td>
<td class="nump">9,080<span></span>
</td>
<td class="nump">4,197<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rock_DeferredStockUnitsMember', window );">Deferred Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue', window );">Grant date fair value</a></td>
<td class="nump">$ 105<span></span>
</td>
<td class="nump">$ 630<span></span>
</td>
<td class="nump">$ 570<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=rock_PerformanceStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=rock_PerformanceStockUnitsMember</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=rock_DeferredStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=rock_DeferredStockUnitsMember</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>100
<FILENAME>R85.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327115359008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equity-Based Compensation (Cash Paid to Settle Liability Awards) (Details) - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=rock_ManagementStockPurchasePlanMember', window );">MSPP</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid', window );">Restricted stock units credited</a></td>
<td class="nump">$ 3,689<span></span>
</td>
<td class="nump">$ 4,915<span></span>
</td>
<td class="nump">$ 15,401<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted', window );">Restricted stock units credited (in shares)</a></td>
<td class="nump">12,365<span></span>
</td>
<td class="nump">30,475<span></span>
</td>
<td class="nump">57,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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Restricted stock units balance, vested and unvested (in shares)</a></td>
<td class="nump">158,644<span></span>
</td>
<td class="nump">223,892<span></span>
</td>
<td class="nump">231,343<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=srt_ManagementMember', window );">Management</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_ManagementStockPurchasePlanCompensationExpense', window );">MSPP (recovery) expense (in thousands)</a></td>
<td class="num">$ (4,459)<span></span>
</td>
<td class="nump">$ 6,034<span></span>
</td>
<td class="nump">$ 4,518<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ManagementStockPurchasePlanCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Management Stock Purchase Plan, Compensation Expense</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ManagementStockPurchasePlanCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid to settle liability for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net number of non-option equity instruments granted to participants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of equity instruments other than options outstanding, including both vested and non-vested instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-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_StatementEquityComponentsAxis=rock_ManagementStockPurchasePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=rock_ManagementStockPurchasePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_ManagementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=srt_ManagementMember</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>101
<FILENAME>R86.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111535536">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements (Narrative) (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ExtinguishmentOfDebtLineItems', window );"><strong>Extinguishment of Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Carrying value of outstanding debt</a></td>
<td class="nump">$ 88,762,000<span></span>
</td>
<td class="nump">$ 23,781,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Senior Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ExtinguishmentOfDebtLineItems', window );"><strong>Extinguishment of Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Carrying value of outstanding debt</a></td>
<td class="nump">$ 91,000,000<span></span>
</td>
<td class="nump">$ 24,500,000<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_ExtinguishmentOfDebtLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExtinguishmentOfDebtLineItems</td>
</tr>
<tr>
<td style="padding-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_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<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)(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<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 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 6: 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 1D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rock_SeniorCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rock_SeniorCreditAgreementMember</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>102
<FILENAME>R87.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113822336">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Discontinued Operations (Schedule of Disposal Group) (Details) - Disposal Group, Held-for-sale, Not Discontinued Operations - Processing Business - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract', window );"><strong>Assets held for sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet', window );">Accounts receivable, net of allowance</a></td>
<td class="nump">$ 266<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent', window );">Inventories, net of reserves</a></td>
<td class="nump">6,748<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">1,999<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent', window );">Property, plant, and equipment, net</a></td>
<td class="nump">331<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset', window );">Operating lease asset</a></td>
<td class="nump">495<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent', window );">Acquired intangibles, net</a></td>
<td class="nump">6,213<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance', window );">Valuation allowance</a></td>
<td class="num">(13,990)<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="Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation', window );">Total assets held for sale</a></td>
<td class="nump">2,062<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract', window );"><strong>Liabilities held for sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">733<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent', window );">Accrued expenses</a></td>
<td class="nump">1,159<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent', window );">Non-current operating lease liabilities</a></td>
<td class="nump">70<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation', window );">Total liabilities held for sale</a></td>
<td class="nump">$ 1,962<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_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Operating Lease Liability, Noncurrent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Operating Lease, Right-of-Use Asset</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Valuation Allowance</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AssetsOfDisposalGroupIncludingDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<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 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract</td>
</tr>
<tr>
<td style="padding-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_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as accounts, notes and loans receivable attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<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 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as accounts payable attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2473-110228<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: 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 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as accrued liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2473-110228<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as intangible assets, excluding goodwill, attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<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 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2510-110228<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: 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 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as inventory attributable to disposal group, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<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 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2473-110228<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as prepaid and other assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2473-110228<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: 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 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as property, plant and equipment attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2510-110228<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as liabilities attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 4: 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 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract</td>
</tr>
<tr>
<td style="padding-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_DisposalGroupClassificationAxis=us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ProcessingBusinessMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ProcessingBusinessMember</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>103
<FILENAME>R88.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113249776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued Operations (Net Sales and Operating Loss for Held for Sale Operations) (Details) - Processing Business - Disposal Group, Held-for-sale, Not Discontinued Operations - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue', window );">Net sales</a></td>
<td class="nump">$ 7,840<span></span>
</td>
<td class="nump">$ 20,328<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss', window );">Operating loss</a></td>
<td class="num">$ (6,769)<span></span>
</td>
<td class="num">$ (3,539)<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_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating income (loss) attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ProcessingBusinessMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ProcessingBusinessMember</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_DisposalGroupClassificationAxis=us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</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>104
<FILENAME>R89.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108647728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued Operations (Narrative) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Feb. 23, 2021</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Gain (loss) on disposal</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (13,990)<span></span>
</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="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ApartmentTourApplicationBusinessMember', window );">Apartment Tour Application Business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Gain (loss) on disposal</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromDivestitureOfBusinesses', window );">Cash proceeds from sale of business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember', window );">Discontinued Operations, Disposed of by Sale | Industrial Business Segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration', window );">Net proceeds of sale of business</a></td>
<td class="nump">$ 38,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1', window );">Seller note principal amount</a></td>
<td class="nump">13,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax', window );">Estimated pre-tax loss</a></td>
<td class="nump">30,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Gain (loss) on disposal</a></td>
<td class="num">$ (29,600)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember', window );">Disposal Group, Held-for-sale, Not Discontinued Operations | Processing Business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance', window );">Valuation allowance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,990<span></span>
</td>
<td class="nump">$ 0<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_rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Valuation Allowance</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of gain (loss) not previously recognized resulting from the disposal of a discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration received or receivable for the disposal of assets and liabilities, including discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GainLossOnSaleOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4582445-111684<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash consideration received for selling an asset or business through a noncash (or part noncash) transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4304-108586<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 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4332-108586<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 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4313-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromDivestitureOfBusinesses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromDivestitureOfBusinesses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ApartmentTourApplicationBusinessMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ApartmentTourApplicationBusinessMember</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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_IndustrialBusinessSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_IndustrialBusinessSegmentMember</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_DisposalGroupClassificationAxis=us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ProcessingBusinessMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ProcessingBusinessMember</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>105
<FILENAME>R90.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111739360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued Operations (Components of Income from Discontinued Operations before Taxes, Including the Interest Allocated to Discontinued Operations) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Held for sale valuation allowance</a></td>
<td class="nump">$ 13,990<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="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax', window );">(Loss) income before taxes</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,479<span></span>
</td>
<td class="num">(16,602)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember', window );">Discontinued Operations, Held-for-sale | Industrial Business Segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue', window );">Net sales</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">20,391<span></span>
</td>
<td class="nump">128,915<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense', window );">Operating expenses</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">17,493<span></span>
</td>
<td class="nump">115,822<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Held for sale valuation allowance</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,419<span></span>
</td>
<td class="nump">29,600<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense', window );">Interest expense allocation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">95<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax', window );">(Loss) income before taxes</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1,479<span></span>
</td>
<td class="num">$ (16,602)<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_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of income (loss) from a discontinued operation. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br><br>Reference 5: 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(12))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 8: 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(14))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest expense attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section S99<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=26872618&amp;loc=d3e7436-122677<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1063-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1060-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationOperatingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating expense attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisposalGroupIncludingDiscontinuedOperationRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GainLossOnSaleOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4582445-111684<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_IndustrialBusinessSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_IndustrialBusinessSegmentMember</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>106
<FILENAME>R91.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111665152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Exit Activity Costs and Asset Impairments (Narrative) (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Jun. 30, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>facility</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>facility</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($) </div>
<div>facility</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed', window );">Number of consolidated facilities to be closed | facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="nump">4<span></span>
</td>
<td class="nump">2<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Held for sale valuation allowance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (13,990)<span></span>
</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="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ApartmentTourApplicationBusinessMember', window );">Apartment Tour Application Business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromDivestitureOfBusinesses', window );">Cash proceeds from sale of business</a></td>
<td class="nump">$ 2,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfBusiness', window );">Held for sale valuation allowance</a></td>
<td class="nump">$ 1,900<span></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_rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Restructuring and Related Cost, Number of Facilities to be Closed</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_GainLossOnSaleOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4582445-111684<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromDivestitureOfBusinesses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromDivestitureOfBusinesses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestructuringCostAndReserveLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveLineItems</td>
</tr>
<tr>
<td style="padding-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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ApartmentTourApplicationBusinessMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=rock_ApartmentTourApplicationBusinessMember</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>107
<FILENAME>R92.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113792800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Exit Activity Costs and Asset Impairments (Schedule Of Asset Impairment Charges Related To Restructuring Activities) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Exit activity costs (recoveries)</a></td>
<td class="nump">$ 6,039<span></span>
</td>
<td class="nump">$ 7,020<span></span>
</td>
<td class="nump">$ 2,207<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringSettlementAndImpairmentProvisions', window );">Asset impairment charges</a></td>
<td class="nump">2,276<span></span>
</td>
<td class="nump">1,193<span></span>
</td>
<td class="nump">81<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">8,315<span></span>
</td>
<td class="nump">8,213<span></span>
</td>
<td class="nump">2,288<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Exit activity costs (recoveries)</a></td>
<td class="nump">250<span></span>
</td>
<td class="nump">145<span></span>
</td>
<td class="nump">375<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringSettlementAndImpairmentProvisions', window );">Asset impairment charges</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="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">250<span></span>
</td>
<td class="nump">145<span></span>
</td>
<td class="nump">375<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember', window );">Renewables | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Exit activity costs (recoveries)</a></td>
<td class="nump">3,256<span></span>
</td>
<td class="nump">4,769<span></span>
</td>
<td class="nump">15<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringSettlementAndImpairmentProvisions', window );">Asset impairment charges</a></td>
<td class="nump">1,198<span></span>
</td>
<td class="nump">1,193<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">4,454<span></span>
</td>
<td class="nump">5,962<span></span>
</td>
<td class="nump">15<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Exit activity costs (recoveries)</a></td>
<td class="nump">1,825<span></span>
</td>
<td class="nump">393<span></span>
</td>
<td class="nump">731<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringSettlementAndImpairmentProvisions', window );">Asset impairment charges</a></td>
<td class="nump">12<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">9<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">1,837<span></span>
</td>
<td class="nump">393<span></span>
</td>
<td class="nump">740<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember', window );">Infrastructure | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Exit activity costs (recoveries)</a></td>
<td class="num">(63)<span></span>
</td>
<td class="nump">26<span></span>
</td>
<td class="nump">226<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringSettlementAndImpairmentProvisions', window );">Asset impairment charges</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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="num">(63)<span></span>
</td>
<td class="nump">26<span></span>
</td>
<td class="nump">226<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember', window );">Agtech | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Exit activity costs (recoveries)</a></td>
<td class="nump">771<span></span>
</td>
<td class="nump">1,687<span></span>
</td>
<td class="nump">860<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringSettlementAndImpairmentProvisions', window );">Asset impairment charges</a></td>
<td class="nump">1,066<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">72<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">$ 1,837<span></span>
</td>
<td class="nump">$ 1,687<span></span>
</td>
<td class="nump">$ 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_BusinessExitCosts1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Includes, but is not limited to, one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, and relocating employees, and termination benefits associated with an ongoing benefit arrangement. Excludes expenses associated with special or contractual termination benefits, a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessExitCosts1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestructuringCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109237686&amp;loc=d3e17752-110868<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.P.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140864-122747<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 https://asc.fasb.org/extlink&amp;oid=126954810&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 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestructuringCostAndReserveLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveLineItems</td>
</tr>
<tr>
<td style="padding-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_RestructuringSettlementAndImpairmentProvisions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of restructuring charges, remediation cost, and asset impairment loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringSettlementAndImpairmentProvisions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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=rock_RenewablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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=rock_ResidentialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember</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=rock_InfrastructureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember</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=rock_AgtechMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember</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>R93.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327106975792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Exit Activity Costs and Asset Impairments (Summary Of Exit Activity Costs And Asset Impairments Recorded in the Consolidated Statements of Operations) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">$ 8,315<span></span>
</td>
<td class="nump">$ 8,213<span></span>
</td>
<td class="nump">$ 2,288<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveAxis=us-gaap_CostOfSalesMember', window );">Cost of sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">5,258<span></span>
</td>
<td class="nump">6,176<span></span>
</td>
<td class="nump">1,059<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveAxis=rock_SellingGeneralAndAdministrativeExpenseMember', window );">Selling, general, and administrative expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="nump">$ 3,057<span></span>
</td>
<td class="nump">$ 2,037<span></span>
</td>
<td class="nump">$ 1,229<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_RestructuringCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109237686&amp;loc=d3e17752-110868<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.P.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140864-122747<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 https://asc.fasb.org/extlink&amp;oid=126954810&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 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestructuringCostAndReserveLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveLineItems</td>
</tr>
<tr>
<td style="padding-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_RestructuringCostAndReserveAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveAxis=rock_SellingGeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveAxis=rock_SellingGeneralAndAdministrativeExpenseMember</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>109
<FILENAME>R94.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108938608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Exit Activity Costs and Asset Impairments (Reconciles Of Liability For Exit Activity Costs Relating To Facility Consolidation Efforts) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserveRollForward', window );"><strong>Restructuring Reserve [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Balance as of</a></td>
<td class="nump">$ 272<span></span>
</td>
<td class="nump">$ 1,030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Exit activity costs recognized</a></td>
<td class="nump">6,039<span></span>
</td>
<td class="nump">7,020<span></span>
</td>
<td class="nump">$ 2,207<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Cash payments</a></td>
<td class="num">(3,894)<span></span>
</td>
<td class="num">(7,778)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Balance as of</a></td>
<td class="nump">$ 2,417<span></span>
</td>
<td class="nump">$ 272<span></span>
</td>
<td class="nump">$ 1,030<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_BusinessExitCosts1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Includes, but is not limited to, one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, and relocating employees, and termination benefits associated with an ongoing benefit arrangement. Excludes expenses associated with special or contractual termination benefits, a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessExitCosts1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsForRestructuring">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: 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 17<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3367-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRestructuring</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestructuringReserve">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.P.4(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringReserve</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestructuringReserveRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringReserveRollForward</td>
</tr>
<tr>
<td style="padding-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>110
<FILENAME>R95.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327111492768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Components of Income (Loss) before Taxes from Continuing Operations) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic', window );">Domestic</a></td>
<td class="nump">$ 112,635<span></span>
</td>
<td class="nump">$ 93,155<span></span>
</td>
<td class="nump">$ 108,930<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign', window );">Foreign</a></td>
<td class="num">(1,145)<span></span>
</td>
<td class="nump">6,407<span></span>
</td>
<td class="num">(1,171)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before taxes</a></td>
<td class="nump">$ 111,490<span></span>
</td>
<td class="nump">$ 99,562<span></span>
</td>
<td class="nump">$ 107,759<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>111
<FILENAME>R96.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327106868976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Benefit of) 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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation', window );">Provision for income taxes</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 366<span></span>
</td>
<td class="nump">$ 2,123<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Total deferred</a></td>
<td class="nump">6,337<span></span>
</td>
<td class="nump">2,968<span></span>
</td>
<td class="nump">3,786<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">29,084<span></span>
</td>
<td class="nump">25,046<span></span>
</td>
<td class="nump">24,468<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember', window );">Continuing Operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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="Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">U.S. Federal</a></td>
<td class="nump">17,014<span></span>
</td>
<td class="nump">16,137<span></span>
</td>
<td class="nump">16,505<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">5,647<span></span>
</td>
<td class="nump">5,009<span></span>
</td>
<td class="nump">4,071<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">86<span></span>
</td>
<td class="nump">932<span></span>
</td>
<td class="nump">106<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total current</a></td>
<td class="nump">22,747<span></span>
</td>
<td class="nump">22,078<span></span>
</td>
<td class="nump">20,682<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">U.S. Federal</a></td>
<td class="nump">5,259<span></span>
</td>
<td class="nump">1,766<span></span>
</td>
<td class="nump">3,620<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="nump">1,381<span></span>
</td>
<td class="nump">134<span></span>
</td>
<td class="nump">672<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Foreign</a></td>
<td class="num">(303)<span></span>
</td>
<td class="nump">1,068<span></span>
</td>
<td class="num">(506)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Total deferred</a></td>
<td class="nump">6,337<span></span>
</td>
<td class="nump">2,968<span></span>
</td>
<td class="nump">3,786<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">29,084<span></span>
</td>
<td class="nump">25,046<span></span>
</td>
<td class="nump">24,468<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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="Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">U.S. Federal</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">362<span></span>
</td>
<td class="nump">1,345<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">139<span></span>
</td>
<td class="nump">57<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">214<span></span>
</td>
<td class="nump">1,725<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total current</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">715<span></span>
</td>
<td class="nump">3,127<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation', window );">Provision for income taxes</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">366<span></span>
</td>
<td class="nump">2,123<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">U.S. Federal</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(340)<span></span>
</td>
<td class="num">(876)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="nump">10<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(11)<span></span>
</td>
<td class="num">(138)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Total deferred</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (349)<span></span>
</td>
<td class="num">$ (1,004)<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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: 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 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&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 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: 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 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: 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 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: 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 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: 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 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DiscontinuedOperationTaxEffectOfDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) related to a discontinued operation. Includes, but is not limited to, tax expense (benefit) related to income (loss) from operations during the phase-out period, tax expense (benefit) related to gain (loss) on disposal, tax expense (benefit) related to gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and tax expense (benefit) related to adjustments of a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 2: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 9: 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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<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 (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: 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(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember</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_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentDiscontinuedOperationsMember</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>112
<FILENAME>R97.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108255040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract', window );"><strong>Effective Income Tax Rate Reconciliation, Amount [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Statutory rate</a></td>
<td class="nump">$ 23,413<span></span>
</td>
<td class="nump">$ 20,908<span></span>
</td>
<td class="nump">$ 22,629<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes', window );">State taxes, less federal effect</a></td>
<td class="nump">5,541<span></span>
</td>
<td class="nump">4,068<span></span>
</td>
<td class="nump">3,650<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxCredits', window );">Federal tax credits</a></td>
<td class="num">(549)<span></span>
</td>
<td class="num">(587)<span></span>
</td>
<td class="num">(1,064)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount', window );">Excess tax benefit on stock based compensation</a></td>
<td class="num">(214)<span></span>
</td>
<td class="num">(2,039)<span></span>
</td>
<td class="num">(1,674)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount', window );">Executive compensation</a></td>
<td class="nump">960<span></span>
</td>
<td class="nump">1,781<span></span>
</td>
<td class="nump">1,114<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(130)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Other</a></td>
<td class="num">(67)<span></span>
</td>
<td class="nump">915<span></span>
</td>
<td class="num">(57)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">$ 29,084<span></span>
</td>
<td class="nump">$ 25,046<span></span>
</td>
<td class="nump">$ 24,468<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract', window );"><strong>Effective Income Tax Rate Reconciliation, Percent [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State taxes, less federal effect</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">4.10%<span></span>
</td>
<td class="nump">3.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="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits', window );">Federal tax credits</a></td>
<td class="num">(0.50%)<span></span>
</td>
<td class="num">(0.60%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent', window );">Excess tax benefit on stock based compensation</a></td>
<td class="num">(0.20%)<span></span>
</td>
<td class="num">(2.00%)<span></span>
</td>
<td class="num">(1.60%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent', window );">Executive compensation</a></td>
<td class="nump">0.90%<span></span>
</td>
<td class="nump">1.80%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="num">(0.10%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments', window );">Other</a></td>
<td class="num">(0.10%)<span></span>
</td>
<td class="nump">0.90%<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective income tax rate, percentage</a></td>
<td class="nump">26.10%<span></span>
</td>
<td class="nump">25.20%<span></span>
</td>
<td class="nump">22.70%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective Income Tax Rate Reconciliation, Executive Compensation, Amount</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective Income Tax Rate Reconciliation, Executive Compensation, Percent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&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 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&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 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=126970579&amp;loc=d3e23163-113944<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=126970579&amp;loc=d3e23163-113944<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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="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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&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 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=122134291&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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<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 (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: 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(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>113
<FILENAME>R98.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327107699872">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes (Deferred Tax Liabilities (Assets)) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Depreciation</a></td>
<td class="nump">$ 14,570<span></span>
</td>
<td class="nump">$ 9,633<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill', window );">Goodwill</a></td>
<td class="nump">62,132<span></span>
</td>
<td class="nump">48,265<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Intangible assets</a></td>
<td class="nump">3,706<span></span>
</td>
<td class="nump">1,657<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesOther', window );">Other</a></td>
<td class="nump">8,133<span></span>
</td>
<td class="nump">5,298<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Gross deferred tax liabilities</a></td>
<td class="nump">88,541<span></span>
</td>
<td class="nump">64,853<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards', window );">Capital loss carryforward</a></td>
<td class="num">(26,490)<span></span>
</td>
<td class="num">(27,328)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost', window );">Equity compensation</a></td>
<td class="num">(5,993)<span></span>
</td>
<td class="num">(8,236)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness', window );">Assets held for sale</a></td>
<td class="num">(13,669)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment', window );">Capitalized research and development costs</a></td>
<td class="num">(4,503)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOther', window );">Other</a></td>
<td class="num">(17,493)<span></span>
</td>
<td class="num">(15,641)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Gross deferred tax assets</a></td>
<td class="num">(68,148)<span></span>
</td>
<td class="num">(51,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="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowances</a></td>
<td class="nump">26,488<span></span>
</td>
<td class="nump">26,581<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNet', window );">Deferred tax assets, net of valuation allowances</a></td>
<td class="num">(41,660)<span></span>
</td>
<td class="num">(24,624)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Net deferred tax liabilities</a></td>
<td class="nump">$ 46,881<span></span>
</td>
<td class="nump">$ 40,229<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred Tax Assets, Temporary Difference, Future Sale Of Business</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&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 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<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(15)(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxAssetsCapitalLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible capital loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsCapitalLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsInProcessResearchAndDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before 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="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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred 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="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 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: 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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&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 805<br> -SubTopic 740<br> -Section 25<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966508&amp;loc=d3e9972-128506<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 740<br> -Section 25<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126966508&amp;loc=d3e9979-128506<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>114
<FILENAME>R99.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327107195024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Narrative) (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory tax rate, percentage</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">$ 7,900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings', window );">Undistributed earnings of foreign subsidiaries</a></td>
<td class="nump">2,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_CapitalLossCarryfoward', window );">Capital loss carryforward</a></td>
<td class="nump">110,000,000<span></span>
</td>
<td class="nump">$ 113,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_CapitalLossCarryfowardAmendedReturns', window );">Amended returns</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DeferredTaxAssetsCapitalLossCarryfowards', window );">Deferred tax assets, capital loss carryforwards</a></td>
<td class="nump">26,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense', window );">Interest and penalties recognized</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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_IncomeTaxStatueOfLimitationsExpirationPeriod', window );">Statute of limitations expiration period, in years</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_IncomeTaxStatueOfLimitationsExpirationPeriod', window );">Statute of limitations expiration period, in years</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>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Federal</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">$ 400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DeferredTaxAssetsCapitalLossCarryfowards', window );">Deferred tax assets, capital loss carryforwards</a></td>
<td class="nump">22,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">6,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rock_DeferredTaxAssetsCapitalLossCarryfowards', window );">Deferred tax assets, capital loss carryforwards</a></td>
<td class="nump">4,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign Tax Authority</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, net of operating losses</a></td>
<td class="nump">$ 200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_CapitalLossCarryfoward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capital Loss Carryfoward</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_CapitalLossCarryfoward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_CapitalLossCarryfowardAmendedReturns">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capital Loss Carryfoward, Amended Returns</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_CapitalLossCarryfowardAmendedReturns</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_DeferredTaxAssetsCapitalLossCarryfowards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred Tax Assets, Capital Loss Carryfowards</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_DeferredTaxAssetsCapitalLossCarryfowards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_rock_IncomeTaxStatueOfLimitationsExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income Tax Statue Of Limitations Expiration Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_IncomeTaxStatueOfLimitationsExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</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_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxLiabilitiesUndistributedForeignEarnings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from undistributed earnings of subsidiary and other recognized entity not within country of domicile. Includes, but is not limited to, other basis differences.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&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 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OperatingLossCarryforwardsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwardsLineItems</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</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_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember</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_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember</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>115
<FILENAME>R100.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327107300624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Summary of Valuation Allowance) (Details) - Deferred Tax Valuation Allowance - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MovementInValuationAllowancesAndReservesRollForward', window );"><strong>SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance as of January&#160;1</a></td>
<td class="nump">$ 26,581<span></span>
</td>
<td class="nump">$ 111<span></span>
</td>
<td class="nump">$ 298<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Cost charged to the tax provision</a></td>
<td class="nump">10<span></span>
</td>
<td class="nump">13<span></span>
</td>
<td class="nump">70<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesDeductions', window );">Reductions</a></td>
<td class="num">(103)<span></span>
</td>
<td class="num">(41)<span></span>
</td>
<td class="num">(248)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesAdjustments', window );">Reclassification from discontinued operations upon sale of industrial group</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">26,498<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="Show.showAR( this, 'defref_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation', window );">Currency translation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(9)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance as of December&#160;31</a></td>
<td class="nump">$ 26,488<span></span>
</td>
<td class="nump">$ 26,581<span></span>
</td>
<td class="nump">$ 111<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Valuation Allowances And Reserves, Increase (Decrease) For Currency Translation</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rock_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_MovementInValuationAllowancesAndReservesRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MovementInValuationAllowancesAndReservesRollForward</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in valuation and qualifying accounts and reserves from adjustment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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(Column B))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<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(Column E))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in valuation and qualifying accounts and reserves from charge to cost and expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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(Column C)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ValuationAllowancesAndReservesDeductions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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(Column D))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesDeductions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ValuationAllowancesAndReservesTypeAxis=us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>116
<FILENAME>R101.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327118762480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Income Taxes Paid, Net of Tax Refunds) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Payments made for income taxes, net</a></td>
<td class="nump">$ 27,017<span></span>
</td>
<td class="nump">$ 22,076<span></span>
</td>
<td class="nump">$ 21,351<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of 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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>117
<FILENAME>R102.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327198557264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per Share (Narrative) (Details) - shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_CommonStockMember', window );">Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive number of shares</a></td>
<td class="nump">43,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">13,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_CommonStockMember</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>118
<FILENAME>R103.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327115356352">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per Share (Schedule of Computation of Basic and Diluted Earnings per Share) (Details) - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Income from continuing operations</a></td>
<td class="nump">$ 82,406<span></span>
</td>
<td class="nump">$ 74,516<span></span>
</td>
<td class="nump">$ 83,291<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity', window );">Income (loss) from discontinued operations</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,113<span></span>
</td>
<td class="num">(18,725)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 82,406<span></span>
</td>
<td class="nump">$ 75,629<span></span>
</td>
<td class="nump">$ 64,566<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average shares outstanding (in shares)</a></td>
<td class="nump">32,096<span></span>
</td>
<td class="nump">32,873<span></span>
</td>
<td class="nump">32,664<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Common stock options and restricted stock (in shares)</a></td>
<td class="nump">96<span></span>
</td>
<td class="nump">181<span></span>
</td>
<td class="nump">254<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average shares and conversions (in shares)</a></td>
<td class="nump">32,192<span></span>
</td>
<td class="nump">33,054<span></span>
</td>
<td class="nump">32,918<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4613673-111683<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: 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.13)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 8: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 9: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126962052&amp;loc=d3e4991-113900<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 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1707-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 https://asc.fasb.org/extlink&amp;oid=124432515&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28A<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1500-109256<br><br>Reference 5: 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 23<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1757-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: 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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: 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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>119
<FILENAME>R104.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108577792">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Narrative (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Cumulative effect of new accounting principle in period of adoption</a></td>
<td class="nump">$ 822,099<span></span>
</td>
<td class="nump">$ 825,258<span></span>
</td>
<td class="nump">$ 743,805<span></span>
</td>
<td class="nump">$ 673,964<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember', window );">Cumulative Effect, Period of Adoption, Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', 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="num">(291)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRenewalTerm', window );">Lease renewal term</a></td>
<td class="text">1 month<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRenewalTerm', window );">Lease renewal term</a></td>
<td class="text">15 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember', window );">Retained Earnings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Cumulative effect of new accounting principle in period of adoption</a></td>
<td class="nump">$ 627,978<span></span>
</td>
<td class="nump">$ 545,572<span></span>
</td>
<td class="nump">$ 469,943<span></span>
</td>
<td class="nump">405,668<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember', window );">Retained Earnings | Cumulative Effect, Period of Adoption, Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', 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="num">$ (291)<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_LesseeLeaseDescriptionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeLeaseDescriptionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseRenewalTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918673-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<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(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_srt_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember</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>120
<FILENAME>R105.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327112671408">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Assets and Liabilities of Lessee (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease assets</a></td>
<td class="nump">$ 26,502<span></span>
</td>
<td class="nump">$ 18,120<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current operating lease liability</a></td>
<td class="nump">8,620<span></span>
</td>
<td class="nump">7,239<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Non-current operating lease liabilities</a></td>
<td class="nump">19,041<span></span>
</td>
<td class="nump">11,390<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total operating lease liability</a></td>
<td class="nump">$ 27,661<span></span>
</td>
<td class="nump">$ 18,629<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>121
<FILENAME>R106.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327113818336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Schedule of Lease Cost and Assumptions (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Operating lease cost</a></td>
<td class="nump">$ 11,191<span></span>
</td>
<td class="nump">$ 10,977<span></span>
</td>
<td class="nump">$ 10,005<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermLeaseCost', window );">Short-term lease cost</a></td>
<td class="nump">5,694<span></span>
</td>
<td class="nump">7,153<span></span>
</td>
<td class="nump">996<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Total lease cost</a></td>
<td class="nump">16,885<span></span>
</td>
<td class="nump">18,130<span></span>
</td>
<td class="nump">11,001<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Cash paid for amounts included in the measurement of operating liabilities</a></td>
<td class="nump">8,835<span></span>
</td>
<td class="nump">9,431<span></span>
</td>
<td class="nump">9,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="Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Right-of-use assets obtained in exchange for new lease liabilities</a></td>
<td class="nump">$ 17,008<span></span>
</td>
<td class="nump">$ 1,084<span></span>
</td>
<td class="nump">$ 12,745<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Weighted-average remaining lease term - operating leases</a></td>
<td class="text">5 years 3 months 18 days<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted-average discount rate - operating leases</a></td>
<td class="nump">500.00%<span></span>
</td>
<td class="nump">520.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_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lease cost recognized by lessee for lease contract.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&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 https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="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 https://asc.fasb.org/extlink&amp;oid=123414884&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=128292326&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 https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of short-term lease cost, excluding expense for lease with term of one month or less.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&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 https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>122
<FILENAME>R107.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327109092800">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Maturity of Lease Payments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 9,734<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2024</a></td>
<td class="nump">6,884<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2025</a></td>
<td class="nump">3,850<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2026</a></td>
<td class="nump">2,444<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2027</a></td>
<td class="nump">1,817<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">After 2027</a></td>
<td class="nump">7,011<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">31,740<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: present value discount</a></td>
<td class="num">(4,079)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Present value of lease liabilities</a></td>
<td class="nump">$ 27,661<span></span>
</td>
<td class="nump">$ 18,629<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>123
<FILENAME>R108.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327198625008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Information (Narrative) (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2022 </div>
<div>segment</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationRevenueAbstract', window );"><strong>Segment Reporting Information, Revenue for Reportable Segment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reportable segments</a></td>
<td class="nump">4<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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SegmentReportingInformationRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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>124
<FILENAME>R109.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327107136896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Information (Measurements Used by Management to Assess Performance of Segments) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">$ 1,389,966<span></span>
</td>
<td class="nump">$ 1,339,783<span></span>
</td>
<td class="nump">$ 1,032,578<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations:</a></td>
<td class="nump">130,102<span></span>
</td>
<td class="nump">96,988<span></span>
</td>
<td class="nump">107,190<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">26,167<span></span>
</td>
<td class="nump">31,966<span></span>
</td>
<td class="nump">20,915<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,210,613<span></span>
</td>
<td class="nump">1,214,901<span></span>
</td>
<td class="nump">1,212,494<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">20,138<span></span>
</td>
<td class="nump">17,705<span></span>
</td>
<td class="nump">13,068<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">77,438<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations:</a></td>
<td class="nump">163,618<span></span>
</td>
<td class="nump">133,959<span></span>
</td>
<td class="nump">142,401<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Unallocated Corporate Expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations:</a></td>
<td class="num">(33,516)<span></span>
</td>
<td class="num">(36,971)<span></span>
</td>
<td class="num">(35,211)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">1,190<span></span>
</td>
<td class="nump">219<span></span>
</td>
<td class="nump">300<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">24,448<span></span>
</td>
<td class="nump">21,246<span></span>
</td>
<td class="nump">28,057<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">1,424<span></span>
</td>
<td class="nump">3,869<span></span>
</td>
<td class="nump">7,101<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember', window );">Renewables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">377,567<span></span>
</td>
<td class="nump">432,096<span></span>
</td>
<td class="nump">238,107<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember', window );">Renewables | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">377,567<span></span>
</td>
<td class="nump">432,096<span></span>
</td>
<td class="nump">238,107<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations:</a></td>
<td class="nump">25,243<span></span>
</td>
<td class="nump">20,158<span></span>
</td>
<td class="nump">30,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="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">8,467<span></span>
</td>
<td class="nump">14,682<span></span>
</td>
<td class="nump">3,377<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">392,368<span></span>
</td>
<td class="nump">445,486<span></span>
</td>
<td class="nump">402,797<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">3,589<span></span>
</td>
<td class="nump">4,268<span></span>
</td>
<td class="nump">423<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">767,248<span></span>
</td>
<td class="nump">635,505<span></span>
</td>
<td class="nump">522,814<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">767,248<span></span>
</td>
<td class="nump">635,505<span></span>
</td>
<td class="nump">522,814<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations:</a></td>
<td class="nump">126,458<span></span>
</td>
<td class="nump">105,821<span></span>
</td>
<td class="nump">94,430<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">8,983<span></span>
</td>
<td class="nump">8,694<span></span>
</td>
<td class="nump">8,110<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">519,567<span></span>
</td>
<td class="nump">453,469<span></span>
</td>
<td class="nump">407,132<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">10,050<span></span>
</td>
<td class="nump">4,182<span></span>
</td>
<td class="nump">3,313<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember', window );">Agtech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">168,868<span></span>
</td>
<td class="nump">199,161<span></span>
</td>
<td class="nump">209,460<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember', window );">Agtech | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">168,868<span></span>
</td>
<td class="nump">199,161<span></span>
</td>
<td class="nump">209,460<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations:</a></td>
<td class="nump">2,914<span></span>
</td>
<td class="num">(931)<span></span>
</td>
<td class="nump">10,633<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">4,377<span></span>
</td>
<td class="nump">5,279<span></span>
</td>
<td class="nump">6,068<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">193,966<span></span>
</td>
<td class="nump">212,038<span></span>
</td>
<td class="nump">216,274<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">3,177<span></span>
</td>
<td class="nump">3,289<span></span>
</td>
<td class="nump">720<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember', window );">Infrastructure</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">76,283<span></span>
</td>
<td class="nump">73,021<span></span>
</td>
<td class="nump">62,197<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember', window );">Infrastructure | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems', window );"><strong>Segment Reporting, Other Significant Reconciling Item [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">76,283<span></span>
</td>
<td class="nump">73,021<span></span>
</td>
<td class="nump">62,197<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations:</a></td>
<td class="nump">9,003<span></span>
</td>
<td class="nump">8,911<span></span>
</td>
<td class="nump">7,233<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">3,150<span></span>
</td>
<td class="nump">3,092<span></span>
</td>
<td class="nump">3,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="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">80,264<span></span>
</td>
<td class="nump">82,662<span></span>
</td>
<td class="nump">80,796<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">$ 1,898<span></span>
</td>
<td class="nump">$ 2,097<span></span>
</td>
<td class="nump">$ 1,511<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_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="Show.toggleNext( this );">+ References</a><div 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: 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 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 19: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: 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 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: 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(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: 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 30<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<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 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<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 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: 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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 3: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: 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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: 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 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: 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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 19: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 23: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SegmentReportingOtherSignificantReconcilingItemLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems</td>
</tr>
<tr>
<td style="padding-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_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentDiscontinuedOperationsMember</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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=rock_RenewablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember</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=rock_ResidentialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember</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=rock_AgtechMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember</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=rock_InfrastructureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember</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>R110.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108188688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Information (Net Sales by Contract Type) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">$ 1,389,966<span></span>
</td>
<td class="nump">$ 1,339,783<span></span>
</td>
<td class="nump">$ 1,032,578<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember', window );">Renewables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">377,567<span></span>
</td>
<td class="nump">432,096<span></span>
</td>
<td class="nump">238,107<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember', window );">Residential</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">767,248<span></span>
</td>
<td class="nump">635,505<span></span>
</td>
<td class="nump">522,814<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember', window );">Agtech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">168,868<span></span>
</td>
<td class="nump">199,161<span></span>
</td>
<td class="nump">209,460<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember', window );">Infrastructure</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">76,283<span></span>
</td>
<td class="nump">73,021<span></span>
</td>
<td class="nump">62,197<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Point in Time</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">834,887<span></span>
</td>
<td class="nump">711,793<span></span>
</td>
<td class="nump">616,789<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Point in Time | Renewables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">27,317<span></span>
</td>
<td class="nump">28,630<span></span>
</td>
<td class="nump">22,833<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Point in Time | Residential</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">761,576<span></span>
</td>
<td class="nump">630,494<span></span>
</td>
<td class="nump">518,281<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Point in Time | Agtech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">13,011<span></span>
</td>
<td class="nump">20,157<span></span>
</td>
<td class="nump">52,894<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Point in Time | Infrastructure</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">32,983<span></span>
</td>
<td class="nump">32,512<span></span>
</td>
<td class="nump">22,781<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Over Time</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">555,079<span></span>
</td>
<td class="nump">627,990<span></span>
</td>
<td class="nump">415,789<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Over Time | Renewables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">350,250<span></span>
</td>
<td class="nump">403,466<span></span>
</td>
<td class="nump">215,274<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Over Time | Residential</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">5,672<span></span>
</td>
<td class="nump">5,011<span></span>
</td>
<td class="nump">4,533<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Over Time | Agtech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">155,857<span></span>
</td>
<td class="nump">179,004<span></span>
</td>
<td class="nump">156,566<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Over Time | Infrastructure</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">$ 43,300<span></span>
</td>
<td class="nump">$ 40,509<span></span>
</td>
<td class="nump">$ 39,416<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_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 3: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: 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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: 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 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: 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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 19: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 23: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementBusinessSegmentsAxis=rock_RenewablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_RenewablesMember</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=rock_ResidentialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_ResidentialMember</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=rock_AgtechMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_AgtechMember</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=rock_InfrastructureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=rock_InfrastructureMember</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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember</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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember</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>R111.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140327108447408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Information (Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile) (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, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">$ 1,389,966<span></span>
</td>
<td class="nump">$ 1,339,783<span></span>
</td>
<td class="nump">$ 1,032,578<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">136,787<span></span>
</td>
<td class="nump">97,368<span></span>
</td>
<td class="nump">91,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="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_NorthAmericaMember', window );">North America</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">1,373,907<span></span>
</td>
<td class="nump">1,318,795<span></span>
</td>
<td class="nump">1,018,406<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">136,553<span></span>
</td>
<td class="nump">97,003<span></span>
</td>
<td class="nump">90,685<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_AsiaMember', window );">Asia</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales:</a></td>
<td class="nump">16,059<span></span>
</td>
<td class="nump">20,988<span></span>
</td>
<td class="nump">14,172<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">$ 234<span></span>
</td>
<td class="nump">$ 365<span></span>
</td>
<td class="nump">$ 476<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_NoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 3: 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 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: 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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: 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 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: 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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 19: 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(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 23: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_NorthAmericaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_NorthAmericaMember</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=srt_AsiaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_AsiaMember</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>127
<FILENAME>rock-20221231_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2022"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:rock="http://www.gibraltar1.com/20221231"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="rock-20221231.xsd" xlink:type="simple"/>
    <context id="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i888a542c0c4546dfa845c641c2ad5ac0_I20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="i64a4017db5b04733b0c2b560ec5f87b1_I20230221">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <instant>2023-02-21</instant>
        </period>
    </context>
    <context id="ide0cba670a934b7fa6ed49872e0a383f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i60c7ad643ee24947a0507767fd7af229_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib27155f7aba943d79ec120faa76c72cc_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic293a1eb0344401e83175208f94528cd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iac43c12b18c341d7b786b27eb503ed35_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i1f2f9cce6699404a833413104919ce4e_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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="ie3983509898c478e9a8bbecfe502ed64_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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="i5122901a55b04dbfae33f1597b75c66b_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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="i123074e2cd1c4e7186ee79d3e7db5e8f_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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="ie30e8dc0ac464faea642c432df7aef2f_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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="i7e6fbd0487c147e2a4c30cd05cb44d5b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifb0e745a89424ceb9337a1ba7911fd78_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i04634afcd3c9491d8d455f2951443e11_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="if6775c337c2142e0a43f6f90bd4d2fb5_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ic54cbd171db94113b88cdb36b6ee6d76_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia63844f3738a4b5db27035bc3b17fbd0_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifbd110efb3794f18a6cc54166c3ba701_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic70acb87500f4a79946405a1f6a58999_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i50e273bab9d543bc8f7e428b18676a56_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i5effa7766b414823a6b37abacb899a66_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i5e7a6b0d487c42e989ebef27fc419fc0_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i7bc646f1a61c478c89b5f830797418fa_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i24dc19df42dc4e49a91f11718670da8b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i1225272475884cc6bc34be3f6a6e3a4f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i1191b15085d24a4090a0e6cf7f8a8754_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if4c54cc99046494ba560c270ccbc3879_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9e70b63e924649afa96b3f3565e42b26_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i83385c33271c449185e1f48b7c32fcc0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3d2b4833bc724d81af84c2be116ddc36_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie361ac8943624af59a34da5baada933f_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i42f7d8305bf74256aa08ab7219dcd4af_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="icf0b08651dde4f8d94a7bde9dbce6a9a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i976e866e5d78415f82e96b8a1a8f8bba_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia8189174c2d4405383f05c32cc8c5f9d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iac9cad15749148fb8d6bcd2f6790d617_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if033831b782e49ff955d964e0bb5299b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i27908b60c3e84604a696a0da2c41f62e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesAndAgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="idbe6a8124fc44a00a6467aef510ebbfd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie54da7396361489495cbe337cf00b779_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1ea1ab49276343edb9a5e6c56f0e61e8_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i98e1c3b3185f4ddcbe64b5c44936ee08_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i95ff1080bfe94f89a11b0c8c5f16d8b6_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="icf48193410cf43ef90a3483df0c17674_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rock:HomeImprovementRetailCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i189fd663bed442f5bd1e0f0305c11730_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandBuildingsAndImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if7710fe2fac7428aa8d7508ca7dc9997_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandBuildingsAndImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib56947beeb194a5a908e873e0702d475_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ied8c39d5f0ff4f1e977a523a36165cba_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie9f0cf89203446ea80e9bc2562a71d2b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id42b3ba54fe5400f99720a70c62e6a75_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i841c4b7ae582485d83be490f499f4416_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:BillingsinExcessofCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iafa9f88ca1a5425a9d9a2a3ab68bc2f5_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:BillingsinExcessofCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3a2270fdbe18406a99dc5af36308726a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:BillingsinExcessofCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ibd14b74b67ad4900b366da7049fabf98_D20220822-20220822">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-22</startDate>
            <endDate>2022-08-22</endDate>
        </period>
    </context>
    <context id="ia26bb7d828b149e89a0de2fd955f82b8_I20220822">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-08-22</instant>
        </period>
    </context>
    <context id="ia53930dbdf4d433a9a1ee073b78ecc87_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ie420fd6d67ea4026ac76cd01f8ae887e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i950fb400edd84bc0b1053d0f045f4bd2_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i23c6169a4f084952b8b81fb79a422cb7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:QualityAluminumProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iba42d8c107304be29ecfaed639e54bf3_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2bc68fc7389d4665936f44afe1c58d53_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i3e16b98023f248ff90c852fdcd7a2623_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i61cb50863b25452db870ee255e5a8c82_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8bf47beeeac44a04a5f55b11927aaaf2_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if7639d49bdfc4003941beb06441de5c6_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:TerraSmartLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8f277843f5534746b24281c4ee2014d5_D20201211-20201211">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-11</startDate>
            <endDate>2020-12-11</endDate>
        </period>
    </context>
    <context id="i5e6f452b4a1b4e6a8b184d4c8f80496e_I20201211">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-11</instant>
        </period>
    </context>
    <context id="idb4bde9ae5a348e78d63923d447340b3_D20201015-20201015">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ArchitecturalMailboxesLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-15</startDate>
            <endDate>2020-10-15</endDate>
        </period>
    </context>
    <context id="i9e9f7895818b484da5882e080d8e2452_I20201015">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ArchitecturalMailboxesLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-15</instant>
        </period>
    </context>
    <context id="i0ef75e3c221f4f338c1bf51f38ce9576_D20200213-20200213">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:DeltaSeparationsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-13</startDate>
            <endDate>2020-02-13</endDate>
        </period>
    </context>
    <context id="i902a884f64974d83822f51709064c20a_I20200213">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:DeltaSeparationsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-02-13</instant>
        </period>
    </context>
    <context id="if86ca76cd65c4006b3692afadc0b02ae_D20200115-20200115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ThermoEnergySystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-15</startDate>
            <endDate>2020-01-15</endDate>
        </period>
    </context>
    <context id="i439e4e6ea5524e078df5e17c1e2b6d4f_I20200115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:ThermoEnergySystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-15</instant>
        </period>
    </context>
    <context id="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-15</instant>
        </period>
    </context>
    <context id="i5cc82b0990cc4dfb8a6bdd944787604c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ifca7e9995091438d9f29db951e63c3e1_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id976d25e9da5438eaf01269b17b7cc75_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iee76914c5a3a46ada1936808ffbf5332_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2154daa1d9f344679a5d40aaa4d8d1f0_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i6ae678b7a3cb46f6abea5ea2e6935c0a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iaf210ed4dc594bd0bd16f946f436a7e7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iabf1f8f4f96e4c75b1945a4982f727cd_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iffcf9f3e99d24cafbf555fcf67952107_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="icb949c48d0124d1db3f745a0ef827873_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i62f610b3b97140f2b98e1f2951aa8141_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rock:SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5f658b3ed6264fd99f84bf5b525b2ade_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i63ddff1a813649999f3234aa74dec939_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ifcb6399157ce46b3ab6578faaa0799ac_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i26e2e96e9b424dc3931dcd7088766572_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i49718e9a7dff488e96157cf2b01ea7b1_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i64c401bebe194e8da22bd1d9ee5cb954_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if71ea0dc0ccb42fe9d884b3b42df66c9_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia980978b7aaa41c3a7838d24b52993e0_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i333fd532e777418bb2a4458a54d5087d_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4b1b166ea550472199d3c2e4dfbaa397_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i440bce1026014d699ffb16eb70be7748_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i74ebb29fe92148aab89177f0f20edfba_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i93429e7458594c2e953b224890378183_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3622765463ad433297deb9d47bcfb46c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ied0814c367b446958b056acced90712d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie13564e143704ba78a69c6f2857d3f71_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i3d37137cd4fe440481550ac83f0f08fd_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i36572c7ac0e74bb28ca7bb656743aecf_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id0f0d39e2c1a4fa6a83683917981fe44_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i89b997777cfc479cbbd4ef3e03aeeabf_D20211031-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
        </entity>
        <period>
            <startDate>2021-10-31</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i28ed3266a0424e99ac87b56e62129621_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ie3a7d0c314a24499b50a7c7fbd12721a_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i89da7e5c329e4105aa84f199f668c844_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic469bc0572314902853c3ad9e1d3baef_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i72e7b4f08fda409a971ae7455c53cc60_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:UnpatentedTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic50c252ace0543c7b187a1b6c1ee0fc4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:UnpatentedTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iaffcc7b0c9354b07a05abe249f56522f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9f5c95a2686047609f20149ad733e751_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i042ca367b3054f458691848bac77b1c7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id68ad57c962249609b7ddaa9d04ac3f4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7888d078e4f843edaf117043996952ed_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1dc5b3189a014aaf816b9491ac09dee8_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">rock:BacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ifb286abff79f433bb164050d22b67bf2_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i390ed5e5398a4d0f8bde706fbda3f977_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id7bee0a4f4c04f22be0ab908a812d590_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="i87eac64abb6b4190919865e4e52c33ab_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="ie128a3846c194d75bd402acbbd1a4fe9_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="i72e5782bc3234021bc2a697ee85bfdde_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">rock:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="i7ad71497c76d470a84d354b521123b79_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="id2456037a4904999b206b3a3b3b12e6e_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="i491829aa14ff445087fe4d84630a451f_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">rock:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="i7c6612ecdb514a43b8940d7651e47159_I20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">rock:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-08</instant>
        </period>
    </context>
    <context id="i497e4dc4ca374e6f869a97d6180e3e4d_D20221208-20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-08</startDate>
            <endDate>2022-12-08</endDate>
        </period>
    </context>
    <context id="i8864c40a209547638ebedf1fbf1f7123_D20221208-20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-08</startDate>
            <endDate>2022-12-08</endDate>
        </period>
    </context>
    <context id="i0dd4765697774aa0b53e04ec0ca643d2_D20221208-20221208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2022SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="rock:DebtInstrumentApplicableRatePeriodAxis">rock:ApplicableRatePeriod2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-08</startDate>
            <endDate>2022-12-08</endDate>
        </period>
    </context>
    <context id="ic0bce679a65c45d6b29a9ec16c6b6d10_I20190124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-01-24</instant>
        </period>
    </context>
    <context id="i5b17fcbf0d4e40d7ba6715216de7c164_I20190124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-01-24</instant>
        </period>
    </context>
    <context id="if7ba4301de314a0ea4778486cdb23062_D20190124-20190124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-24</startDate>
            <endDate>2019-01-24</endDate>
        </period>
    </context>
    <context id="ia6b99920cc0b47cd9139f7f7859da644_D20190124-20190124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-24</startDate>
            <endDate>2019-01-24</endDate>
        </period>
    </context>
    <context id="i1a323de35a0e4ed79c546beae5e4d83f_D20190124-20190124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-24</startDate>
            <endDate>2019-01-24</endDate>
        </period>
    </context>
    <context id="i664dba56ce324a7a84153d83b9d28430_D20190124-20190124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:A2019SeniorCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-24</startDate>
            <endDate>2019-01-24</endDate>
        </period>
    </context>
    <context id="i2131f3e7067e47028fbc6dbf4486512c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:SeniorCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2e00a01d8de24157995e47b11966bd92_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:SeniorCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id7e0272766e042deb09c8d7bf29912bf_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rock:SeniorCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i76b0f0e268d043b09e73783a49354a64_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">rock:A401kPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ief7806189c624d50965f724b3ad91ac6_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">rock:A401kPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if8d8c6e9addc4a84ab0953c320143ea7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">rock:A401kPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="idf8b2e4b662e4079a2de5600f10962ee_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8bc76c5e5bc4472888c9c5bffaf2af46_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iec3c4084131b4c27ac59fe2752c82bd7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i775ce2acfd4f479eb91079a2f9fcd0a6_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3a361c2e35a94f0299b5ad792874480e_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i2c8c739d96c6432f9839cca666e5b5e5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i654d7b52bf0d44dcaadd0e6141fff694_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic6fb3ef74a9748c9bf2a4943b8c9ce16_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i52b6a2f097b04e359a67ed5126fb741d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i1db4e303323f4b4da1e32f1bd8fb3cef_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i93d83a6bef504435b7494d9cb5705de0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i05311f8972a44dfaae02e04365ab7ed8_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i07485c38abca452bab5802afcd841a70_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i05d994f7a8304ca09d7a49628f1e46fd_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9dc15d7b762f4f8786fc2f0819ef131a_I20220503">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:NonEmployeeDirectorsPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-05-03</instant>
        </period>
    </context>
    <context id="if70f323d342048b0aff53344ac311523_I20220504">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:NonEmployeeDirectorsPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-05-04</instant>
        </period>
    </context>
    <context id="i35da7e2535974c3f985d4aa66244b262_I20180504">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-05-04</instant>
        </period>
    </context>
    <context id="i333f727333a74cf8835cfdc0d0bf40da_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i37da9a71b45e47bda80c54f802690cb3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandFifteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ife54428f5bae415a958afbba89deb379_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:NonEmployeeDirectorsPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if3b28f29f8654fb38644d2e8f5a6c7bb_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2015PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i521f14e0f444475cba6d0358136ce841_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2015PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iaf596457fd2842ff8d756f74b142b118_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2015PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i87a3975702e24b0a8e506f6418b4d8e5_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7ca3a95410fc4aadbabbe31d8a1fb927_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i12732f10c82a4193ae08cd52a26c3ea5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib9cc28d5b75e49d5b3ae72b6c80a4ee8_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie72e3ce0a04b4a80a0eb5f9927d670b9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i618d03ede4c34f7b8d844297505d0164_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ief83552b648c4de7913784604ee97941_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iae23fedcddf44d979e42f2c38a732827_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if43a4604c74848759a8bbab4e6a81aa6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1c774c478e0844d99442be11dc41033e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i4827d903d760472d9a8e5693de24307a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i545d62b1a6f547d9ae836c5783f14e37_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8a478ce43a4d4484bef17790c569a64a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2019Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i77e53b35d6674f12acacf8f09c3e49fd_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2018Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i3f01140fea6242ef9ade3e1ae480373d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">rock:A2017Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9c74c9e35f984b23a6aa3697439dec2f_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9f0fdc742d974a3a9e7921bd12764d57_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id66b4e03f0e44ce19383390bbf30f112_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rock:SharebasedCompensationMeasurementReturnOnInvestedCapitalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:A2018PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iaf396751c7114ec9b112601dabb39141_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rock:SharebasedCompensationMeasurementGrossProfitThresholdMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i6054511fdfeb4e00946479079f027f16_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rock:SharebasedCompensationMeasurementTotalShareholderReturnMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">rock:ExercisePriceRangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i30eeb572360a444687cf4f1786455f4d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">rock:ExercisePriceRangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i38cae17618c143df862f8800ca9a3a77_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5231405b5fc7416abb675f49efbb9975_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i0ad65e0eabf24a249dfefb2d94919c27_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id5a396136f6749ac889564510e4cafe9_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i986ac747424845d489807f6438b4665b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i315cd57c109943679521192035347e33_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i42cbdaa65de645b6b771deddf4f01f16_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i90db669524424d7a93e78e1228bd42ad_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i60bd80b6b9a34d888f8c614f80a652f4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9ddd417da4ce430b8ed75fa12a9900d9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i7d334fc11e7344ca8b41f2f79f4aaf39_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i3c866d4a56934156867914a30d42747f_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceSharesMarketConditionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9ec69f2a2f3d4689b1f34eddbae63b31_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceSharesMarketConditionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9ea0ebadd87a4b54bda9ceb4768018cf_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia734b50389e0476cb94df62ddbd4f9d5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="icb1fe569d47f4fbbb55606ef73735d8f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4c5101685f264c21b84bba3b53c5b581_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i67d73249f83a4f98ad9a4458048dbafc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2e1e472787084d00b78ff903e7523e71_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic7671d74549b483f869621f804a9bf70_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:PerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iae02fc9e4ad64cfba5c29bd54552416e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ied78e4545b8d433e853fcab799ed452d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rock:DeferredStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2b2e20c0caef44a882bfef5d6d426ccc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ifa220c5a25d849c99605773d3cf52640_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:AccruedExpensesCurrentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4ddfeed1ae2842c68338f7d3a752ba37_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:NonCurrentLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic2f756bfa65a4c979874c5ef250317a0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:AccruedExpensesCurrentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i6dae7c6bf20a4152ac70cef8f60f448d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">rock:NonCurrentLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i165b9446497e4588a98219722216535c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i17939686689243ebbbe2ee842d9ef194_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i930b4b829e46464d8b28d88edcec3ed6_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia77e82f6fba44e7cbfb58c000d393766_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">rock:ManagementStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie5f43f67274444859364f93c14051faf_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iae9e35db404446b9860afc58484c10f9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic753417107234c3a8a4bd0b0e8e4c908_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5d1b7da973f44c23ba3652f9d13b2042_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if48290fab268427aad7de6ccfec05cff_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i09954123688144c990bd164885fb1b93_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ProcessingBusinessMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic9662d503bf04b7a9318b1d725f12705_I20210223">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-02-23</instant>
        </period>
    </context>
    <context id="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-23</startDate>
            <endDate>2021-02-23</endDate>
        </period>
    </context>
    <context id="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic654781faab64814b777cd2681362361_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:IndustrialBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib272e75884f9475f844fa8b4b9e2e0a9_D20200630-20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">rock:ApartmentTourApplicationBusinessMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-06-30</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ief3874caed944767832e61940fb24010_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i45c7964e33af433eb4a807a5353dd710_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iafd13dad52a244fe8c23e99242ee61c8_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iba9c650d738747a2ac239a7124dc9d82_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ida1166cf063645c2ae303d35faf48820_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rock:SellingGeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0f1488a28ad0418caff93c9d40bd09d3_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rock:SellingGeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ieb46dc1bb0264e97b683bb8e999646b7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rock:SellingGeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i600cc11fd24045f59837bb977179beaa_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2f557da28680480aa47dbaedd8addd27_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i160e40f0d6b64250ab288482e07b4d75_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6ac4cd9abaf54a7b9341f1689083684e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3eeed6de8a694410925a55f57c53f891_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i93ccdef323fe44f7af1e2d598642810c_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</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="i606b02a914e644578da3701cbd0d6206_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i698a586b50514af8806a5f504ae5c2ff_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2e934cf5324d4c9092293ca06e4e22b5_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0059adf753fa4e0ba7720534154c39f5_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if8d1a98ebe74472893afcc5433a0f4f6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i111a97b689604e879d56f14b17890abc_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i869d08be871044d49eabb09d69de0d7d_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesAndAgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i60b596a3d4bd473c91a8a5d697da7dbb_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib1b3e591b04d4db282b65aef95d18298_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic23634df90da43eba654dcbf13a1a25e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iaba4a164c3c2455093d990d4759232a1_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i522f8989270a4929aef98ff7b39f90b8_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib741179ea0294bdead78b270f0daf503_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i6f3b83f3e41943e1b929e07ef325953f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i24687447981245569bcd8a66827a2383_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i35e9b659622843179eac557f47830575_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i53a3ff74d8a3431fb702036ea2250ca3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia024c32336d54193abc35a7cec004b22_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic897e3a5a34b41629ff3e8e3eecfea5c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0fa156d1fd3e4bcab8e0f6b9aa80f64d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i79e3e4b34a52405d8524a12a7e4b37c4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9ed3fe44794045ffb4246f6ff677f8b6_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i625af8856ca9471d8d96392464096c20_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="idda8bba80a524f4ba58246d35e3514f1_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iede4e392ee2641ddba8694142f8c302d_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0678936455bf45789e72201128d5f331_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i625d1e6d332242c5948db9708e0b6766_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="idec42e19198e484da403534f5dd6fb19_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i5b93ecf38b69436a9e47e1cf87f6f9bf_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i69dfb26490e5474d895d2ad31f8c3ad6_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie54708b0a142430d94d5e77598ffb979_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i761c1d240aeb47c49dd52ec21d0f52fa_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7d5940f4d0994a899a9621ee6a085a48_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iabc0c22753be41148c061c9b5ff1ef5b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9e97e2bedcef4d9ea73f04853fd05f0c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="icecda5027596436db26a6b91d2f54b1c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i363716532bad4cd0980783a148a92cf9_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if2844c05b9d64df9a119f6ebf35fafea_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i92c16fe3a70f4e49b13fc1ae97837fdd_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i6df611de3fcf4e4ea5f715367a0b0785_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic78aa20b5b7e459ea9ae6c86b16c41ac_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="idec35ea930d04e55aeffbc908a770f71_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i971e5962d2e6470587e3528742ba3ac5_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i7692a1ee76c64f6c90276630b19f5315_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="idbcb8892b57a452bafbb13673dc4b633_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i6568f28f534649339a377c1457b00cf7_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie5c73db8e09f4d2a8adca505eed6f629_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i909c4ea4d9124a3d9e46e4ebefb3a1e9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i88799f7c82a94bc9818931b3e9053b77_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2c6fcadea56c411595e911bda16adecc_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i36f3cd03900e4cc2a90aa3f625ff95d0_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i12ac3349377f480da07ba7ee35977f8b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifc9dd5822864450d8ca48589af121a8b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6c8309ea7d5e418495864a84218dd3e4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i57a2da47c8f042d9807e61198d85019d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7e9e49ddcaa8437a8c36f414904c5fff_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ibbdf974085fb4bc69c5ad773356c29e7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4ffdc21072b94ed2a766bc8e772c7fc4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3311e70241234683b6f0365ef2d635dd_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:RenewablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2970908a29054cbc92537cec77a27af9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i552e925085c14096ad706c1beea1f01e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:AgtechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iaf315dd0aa484d9da6b58670384cc282_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">rock:InfrastructureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9be42e649bb74294b67c9df056f9b01f_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i461c6c1e72be4da18e34aa4191acd71a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib700003226794c949b86d5ae230de3be_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i62bcb654a5b049099051d1bd5cb4dbad_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if1c60ecb4c5645b78964809d127f9dcd_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib8e1d522438d41a09f93defccbdc4762_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i70dc3acdc32f4a8193f3c0fbb04b4b03_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if2f0bffb079a4b5c984352237ab43db0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iae0c6a40e67047bcaf2fd03193af79d2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i395d7b63ae9245f483796e43e9548d31_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i870a510a83a24f6eaab1a91af6c51fa1_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="idbb6309168014c9188b1ac31b880af8b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000912562</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="segment">
        <measure>rock:segment</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="business">
        <measure>rock:business</measure>
    </unit>
    <unit id="reporting_unit">
        <measure>rock:reporting_unit</measure>
    </unit>
    <unit id="debtcovenant">
        <measure>rock:debtCovenant</measure>
    </unit>
    <unit id="plan">
        <measure>rock:plan</measure>
    </unit>
    <unit id="facility">
        <measure>rock:facility</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY18xLTEtMS0xLTc4NjA4_24b4acd5-7e22-4dab-84c2-04824ec7c4af">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY18zLTEtMS0xLTc4NjA4_66318eb3-928a-49b1-97ab-c71cd83a798b">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY180LTEtMS0xLTc4NjA4_b0eba684-8b54-41b2-8592-7e967acd1c19">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl80L2ZyYWc6ZTAxZDUyM2JmN2UxNGQxMTk3OTc5Y2ZkNjdmNTRlOGYvdGFibGU6ODVlN2U3ODNjNzI0NGZiNGExODdhYTAxYjcxYmFjM2MvdGFibGVyYW5nZTo4NWU3ZTc4M2M3MjQ0ZmI0YTE4N2FhMDFiNzFiYWMzY181LTEtMS0xLTc4NjA4_9c6a94c0-335c-4a51-b932-c6c9cd8a7771">0000912562</dei:EntityCentralIndexKey>
    <us-gaap:ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzIxOTkwMjMyNTg1MTI_cc8a4d64-9e7f-4e6b-a81a-9f0b19229b16">http://fasb.org/us-gaap/2022#GoodwillAndIntangibleAssetImpairment</us-gaap:ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_2d1782bf-442c-4339-b6ee-027a31ee3839">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_ccd48544-48b8-4ce4-885c-7cb992fa852e">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <rock:IncomeTaxStatueOfLimitationsExpirationPeriod
      contextRef="ie9f0cf89203446ea80e9bc2562a71d2b_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ0NzE_d000bffc-7cbf-4586-bee5-b23ff0114e19">P4Y</rock:IncomeTaxStatueOfLimitationsExpirationPeriod>
    <dei:DocumentType
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk3_1bc64a71-4c03-4e94-8f9c-23d82f079f25">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6Y2YzZTQ2MTdkZDM2NGM0NGE4NmUyNTM4NmU5Mzg3ZGUvdGFibGVyYW5nZTpjZjNlNDYxN2RkMzY0YzQ0YTg2ZTI1Mzg2ZTkzODdkZV8wLTAtMS0xLTc4NjA4_76f2306a-8a60-4b04-803c-ea66dcc07d81">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8xMjc_25aaa18e-e443-4dbf-9d16-dff2d688e4b1">2022-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8xMjc_a4d6286f-cef8-436d-a01d-08058a843275">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OWUwNDEyMjIxYzY0NGUwMWI2ZDlkNTAyMjczYTliMzAvdGFibGVyYW5nZTo5ZTA0MTIyMjFjNjQ0ZTAxYjZkOWQ1MDIyNzNhOWIzMF8wLTAtMS0xLTc4NjA4_f0aeb2d1-e683-4a4e-b11b-ad2c9327542f">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAz_db0bcdce-c9bd-44ce-96a0-67268f91f3b9">000-22462</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA0_8e912002-4f21-4c9b-b93c-211882e2b83d">GIBRALTAR INDUSTRIES, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18wLTAtMS0xLTc4NjA4_c13a31a8-73cd-4b8b-af43-ac07f572f5c2">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18wLTUtMS0xLTc4NjA4_b626e684-5069-461f-8461-604de6497161">16-1445150</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTAtMS0xLTc4NjA4_ca564bc9-fdec-434d-b57a-0571b50ce754">3556 Lake Shore Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTItMS0xLTc4NjA4_8640cde5-6b13-4352-93ea-aae091524754">P.O. Box 2028</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTMtMS0xLTc4NjA4_0d020f5c-9bfd-40fe-97a2-51f662d61dd3">Buffalo ,</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTQtMS0xLTc4NjA4_7a470d0e-99d9-4350-8a75-dee16b7f1696">NY</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6OTQ1YjgwMjAwZjUxNDUzYmJiMzNjM2M0ZjJmY2I5MDMvdGFibGVyYW5nZTo5NDViODAyMDBmNTE0NTNiYmIzM2MzYzRmMmZjYjkwM18yLTUtMS0xLTc4NjA4_b3e9628e-3b4c-4de7-a7b1-4d34bd94051c">14219-0228</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk4_8ad3f3f0-16a7-4fab-ab52-b9818488443e">716</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA1_ddcdbf1c-b28c-44cd-8f75-1d06efb09a51">826-6500</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6NWEzNGIyNTJlZGU0NDQwNDlhYmFmNzE3YjQ2YzQ2ZDgvdGFibGVyYW5nZTo1YTM0YjI1MmVkZTQ0NDA0OWFiYWY3MTdiNDZjNDZkOF8xLTAtMS0xLTc4NjA4_4dae2f22-c6bb-43cb-a04e-e1a8aaa78697">Common Stock, $0.01 par value per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6NWEzNGIyNTJlZGU0NDQwNDlhYmFmNzE3YjQ2YzQ2ZDgvdGFibGVyYW5nZTo1YTM0YjI1MmVkZTQ0NDA0OWFiYWY3MTdiNDZjNDZkOF8xLTItMS0xLTc4NjA4_415ba110-479a-467c-a459-d2794e644677">ROCK</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6NWEzNGIyNTJlZGU0NDQwNDlhYmFmNzE3YjQ2YzQ2ZDgvdGFibGVyYW5nZTo1YTM0YjI1MmVkZTQ0NDA0OWFiYWY3MTdiNDZjNDZkOF8xLTQtMS0xLTc4NjA4_1074cf90-7b5f-4374-8235-6208ffc4c342">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA2_86952aba-a3f4-4817-96b0-43f7b69bcb51">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAw_cca2efde-536c-40d4-a95c-b200046c42bf">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAx_836e7722-f3c6-44aa-9655-d56a66d28dc3">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTA3_81005553-7b35-4567-aa3e-12dbd5592020">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6MGUyOTc3ZjQwZjZkNGEwYjk0ZDUwOWQ4NzNiODE0YmEvdGFibGVyYW5nZTowZTI5NzdmNDBmNmQ0YTBiOTRkNTA5ZDg3M2I4MTRiYV8wLTAtMS0xLTc4NjA4_e2ab60e9-cbf2-46c2-ad64-c76a4c3fec37">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntityEmergingGrowthCompany
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6MGUyOTc3ZjQwZjZkNGEwYjk0ZDUwOWQ4NzNiODE0YmEvdGFibGVyYW5nZTowZTI5NzdmNDBmNmQ0YTBiOTRkNTA5ZDg3M2I4MTRiYV8wLTctMS0xLTc4NjA4_08ca7fe3-d3a3-4e47-87fc-4270c72c9292">false</dei:EntityEmergingGrowthCompany>
    <dei:EntitySmallBusiness
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGFibGU6MGUyOTc3ZjQwZjZkNGEwYjk0ZDUwOWQ4NzNiODE0YmEvdGFibGVyYW5nZTowZTI5NzdmNDBmNmQ0YTBiOTRkNTA5ZDg3M2I4MTRiYV8xLTQtMS0xLTc4NjA4_d226cf8b-2165-4b12-acd7-41719e931d36">false</dei:EntitySmallBusiness>
    <dei:IcfrAuditorAttestationFlag
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk1_572c3998-b7ce-46b4-bf51-cb9044da5a19">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yODk2_0ead22ca-72c2-45a1-97f2-1c9a979db223">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="i888a542c0c4546dfa845c641c2ad5ac0_I20220630"
      decimals="-8"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yNjA1_51881cf1-9846-46a8-804c-fa15b3a75591"
      unitRef="usd">1200000000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i64a4017db5b04733b0c2b560ec5f87b1_I20230221"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yNjY0_6e2b508c-fc3d-4947-bdb0-acf8dac42810"
      unitRef="shares">30786457</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xL2ZyYWc6MjhkMmQwYzgyZTE3NGM0Nzk3ZTc2NmE5YzkxYjAwMmEvdGV4dHJlZ2lvbjoyOGQyZDBjODJlMTc0YzQ3OTdlNzY2YTljOTFiMDAyYV8yOTAy_ad73036b-a7b8-4558-91ce-a533da1056dd">&lt;div style="margin-top:9pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;DOCUMENTS INCORPORATED BY REFERENCE&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Portions of the Registrant&#x2019;s Definitive Proxy Statement to be filed for its 2023 Annual Meeting of Stockholders&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;are incorporated by reference into Part III of this Annual Report on Form 10-K.&lt;/span&gt;&lt;/div&gt;</dei:DocumentsIncorporatedByReferenceTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="ide0cba670a934b7fa6ed49872e0a383f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82MS9mcmFnOmIwM2EzMzVkMzIxOTQxYjliOWYzNjE0NmJlMmNmNjNiL3RleHRyZWdpb246YjAzYTMzNWQzMjE5NDFiOWI5ZjM2MTQ2YmUyY2Y2M2JfMjM2Mw_ed6f02d0-e087-48f7-aa9a-38af6391cc32"
      unitRef="usd">91000000</us-gaap:DebtInstrumentCarryingAmount>
    <dei:AuditorFirmId
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82NC9mcmFnOjVkYzJhYzAyNjlmYzQyNmNhYjhhY2I5YjA4ZTU0Y2Y0L3RhYmxlOmRhMDY3YmFmODhhZTQ5MWQ5ODNhNzE0ODljYTNmZGQwL3RhYmxlcmFuZ2U6ZGEwNjdiYWY4OGFlNDkxZDk4M2E3MTQ4OWNhM2ZkZDBfNS0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOmEwNGViMjRlZWM3YTQ2MWM5NzliYzk2Yjc3OTgyNTY5Xzcx_f202bd7c-c7d8-4fd4-997f-50c26f75137d">42</dei:AuditorFirmId>
    <dei:AuditorName
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82Ny9mcmFnOjAxNzBmMDk3MDE2ZDRiNmQ4NGIzMjJhZTZmN2Q2MzgyL3RleHRyZWdpb246MDE3MGYwOTcwMTZkNGI2ZDg0YjMyMmFlNmY3ZDYzODJfMzc1Mw_4066a0a3-7c00-4422-a4b9-ef3c383826b5">Ernst &amp; Young LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl82Ny9mcmFnOjAxNzBmMDk3MDE2ZDRiNmQ4NGIzMjJhZTZmN2Q2MzgyL3RleHRyZWdpb246MDE3MGYwOTcwMTZkNGI2ZDg0YjMyMmFlNmY3ZDYzODJfMzgxMA_18bf6b5c-8030-4ff1-b52e-da9c373386b8">Boston, Massachusetts</dei:AuditorLocation>
    <us-gaap:Revenues
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMi0xLTEtMS03ODYwOA_896c46a5-8f10-4704-a35d-ad15aa03fd03"
      unitRef="usd">1389966000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMi0zLTEtMS03ODYwOA_20471749-7a8d-4cad-af92-78ec7920a91a"
      unitRef="usd">1339783000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMi01LTEtMS03ODYwOA_bc2db4b7-646a-4e7e-bc22-27536234fadf"
      unitRef="usd">1032578000</us-gaap:Revenues>
    <us-gaap:CostOfRevenue
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMy0xLTEtMS03ODYwOA_2de7322a-a9a3-4b80-82cb-15d33f1fd39d"
      unitRef="usd">1071272000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMy0zLTEtMS03ODYwOA_25ccb5e3-2a80-4dd9-b781-152619bca4f4"
      unitRef="usd">1049772000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMy01LTEtMS03ODYwOA_ee3f3438-f437-4b7b-b12c-646136c5e9b4"
      unitRef="usd">776235000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNC0xLTEtMS03ODYwOA_b074b931-bbb4-42dc-8612-62768fe4e3c4"
      unitRef="usd">318694000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNC0zLTEtMS03ODYwOA_918db8b8-5567-48ed-9436-6dc911bf3f32"
      unitRef="usd">290011000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNC01LTEtMS03ODYwOA_368f991f-6f4b-4c96-8e7e-cdf27887033c"
      unitRef="usd">256343000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNS0xLTEtMS03ODYwOA_d242c1c0-2f0d-457d-a0e2-c6da45f6676b"
      unitRef="usd">188592000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNS0zLTEtMS03ODYwOA_1bf2dfe0-9d8d-4869-ba07-fdb896b1ba16"
      unitRef="usd">184723000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNS01LTEtMS03ODYwOA_5aa49870-7a3f-4181-9445-36f36db11d4c"
      unitRef="usd">149153000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNi0xLTEtMS03ODYwOA_19a47de7-aad9-49e3-a83c-40ca81aa24d9"
      unitRef="usd">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNi0zLTEtMS03ODYwOA_a61137fa-8d36-4513-94b2-e8e6465d0e2d"
      unitRef="usd">8300000</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNi01LTEtMS03ODYwOA_386421fa-2e68-4164-9478-7a2f068c1638"
      unitRef="usd">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:OperatingIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNy0xLTEtMS03ODYwOA_9cf22ca0-7c60-4480-893f-52c205cad37c"
      unitRef="usd">130102000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNy0zLTEtMS03ODYwOA_f0381e14-1863-46ef-91ba-142373fcc456"
      unitRef="usd">96988000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfNy01LTEtMS03ODYwOA_03deaa6c-01f0-4db7-a3c4-b7544372eb9d"
      unitRef="usd">107190000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOC0xLTEtMS03ODYwOA_51be01f4-5291-4c96-ac37-b15a333d34e5"
      unitRef="usd">-4047000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOC0zLTEtMS03ODYwOA_56acc200-b7c6-40f0-9b7f-14aca3c57b1e"
      unitRef="usd">-1639000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOC01LTEtMS03ODYwOA_ba3b28f7-e63d-4b93-a5fa-e7b7620a22a8"
      unitRef="usd">-703000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:OtherIncome
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOS0xLTEtMS03ODYwOA_0a5564bd-f671-4999-bedf-cc6dd74579a2"
      unitRef="usd">-14565000</us-gaap:OtherIncome>
    <us-gaap:OtherIncome
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOS0zLTEtMS03ODYwOA_5311aa38-3e03-426e-8df5-4a4fb4371ffd"
      unitRef="usd">4213000</us-gaap:OtherIncome>
    <us-gaap:OtherIncome
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfOS01LTEtMS03ODYwOA_6c50f5ff-9e31-44aa-a523-6f1c4caa05ce"
      unitRef="usd">1272000</us-gaap:OtherIncome>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTAtMS0xLTEtNzg2MDg_5aa1839f-6911-47ab-819f-f0be6e4c8b01"
      unitRef="usd">111490000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTAtMy0xLTEtNzg2MDg_562d3347-45e4-44bd-8f0e-69e0537f785e"
      unitRef="usd">99562000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTAtNS0xLTEtNzg2MDg_410ef491-5285-409e-bebc-bbf501a58f01"
      unitRef="usd">107759000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTEtMS0xLTEtNzg2MDg_f11dff5c-8196-4aa4-af41-c1f24ba8f9df"
      unitRef="usd">29084000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTEtMy0xLTEtNzg2MDg_d2e8fcb0-aa9f-4b22-8eb5-3f79eecd463d"
      unitRef="usd">25046000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTEtNS0xLTEtNzg2MDg_b3ba185c-a009-459e-9ca8-eab42b129cf3"
      unitRef="usd">24468000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTItMS0xLTEtNzg2MDg_e1796352-d1be-41c2-9d9a-98d7b988e70d"
      unitRef="usd">82406000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTItMy0xLTEtNzg2MDg_c35f57c4-c3d1-4515-97d6-7475aa920c25"
      unitRef="usd">74516000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTItNS0xLTEtNzg2MDg_ec5125de-01dd-4891-80c1-eebd2de6abbe"
      unitRef="usd">83291000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTQtMS0xLTEtNzg2MDg_e0613049-dd33-40de-87fb-14e71deefea2"
      unitRef="usd">0</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTQtMy0xLTEtNzg2MDg_7ba3df7f-96ce-4cd1-a390-cf55473af4a9"
      unitRef="usd">1479000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTQtNS0xLTEtNzg2MDg_7d256acc-3414-4768-91f0-adef477250c2"
      unitRef="usd">-16602000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTUtMS0xLTEtNzg2MDg_d82169d6-13fc-4b20-83a0-c4db5e5656ae"
      unitRef="usd">0</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTUtMy0xLTEtNzg2MDg_41816333-e41d-4312-9c30-02317a684994"
      unitRef="usd">366000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTUtNS0xLTEtNzg2MDg_dd09cb5f-0534-48f9-afaf-ee8b18e1eeaa"
      unitRef="usd">2123000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTYtMS0xLTEtNzg2MDg_dfa48a68-364e-45f6-a8ee-27f05f6098ef"
      unitRef="usd">0</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTYtMy0xLTEtNzg2MDg_126ece23-ba0d-4c8f-ba5b-c48170990893"
      unitRef="usd">1113000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTYtNS0xLTEtNzg2MDg_6acbe0b6-2821-461d-9c84-16a545ebff49"
      unitRef="usd">-18725000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:NetIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTctMS0xLTEtNzg2MDg_90b36e31-dcae-4f05-ac45-79a13b6baf26"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTctMy0xLTEtNzg2MDg_8736f05e-8ac9-4e72-934b-b67fc4be4dab"
      unitRef="usd">75629000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTctNS0xLTEtNzg2MDg_c616d76e-68e8-452e-8f87-23a1e48c038e"
      unitRef="usd">64566000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTktMS0xLTEtNzg2MDg_ba12e59c-d51b-4bc4-8887-3bfd1deac7ab"
      unitRef="usdPerShare">2.57</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTktMy0xLTEtNzg2MDg_d61cd370-3300-4a97-a22d-dff2b1234ef7"
      unitRef="usdPerShare">2.27</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMTktNS0xLTEtNzg2MDg_f430e760-04e8-4d24-88b5-650de83bccb3"
      unitRef="usdPerShare">2.55</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjAtMS0xLTEtNzg2MDg_e674ef73-6937-4dd0-a8fc-3e75fb07d7dc"
      unitRef="usdPerShare">0</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjAtMy0xLTEtNzg2MDg_88b7ae5e-f0bd-4a2e-9d7a-436c51f79419"
      unitRef="usdPerShare">0.03</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjAtNS0xLTEtNzg2MDg_0f9f754e-7b9a-4f17-85c6-5511208a3b70"
      unitRef="usdPerShare">-0.57</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare>
    <us-gaap:EarningsPerShareBasic
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjEtMS0xLTEtNzg2MDg_530f7990-75b7-4d9a-baff-566ead379f1e"
      unitRef="usdPerShare">2.57</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjEtMy0xLTEtNzg2MDg_2c4103c3-8225-4696-ad32-f026654182ea"
      unitRef="usdPerShare">2.30</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjEtNS0xLTEtNzg2MDg_9f60d1de-02b7-4c8d-ac3e-8fdada1ee698"
      unitRef="usdPerShare">1.98</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjItMS0xLTEtNzg2MDg_6387d5e4-6a2e-418f-884a-a7181adbc8df"
      unitRef="shares">32096000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjItMy0xLTEtNzg2MDg_3496ce0b-6929-416f-b44a-89809296d8ef"
      unitRef="shares">32873000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjItNS0xLTEtNzg2MDg_caa418a8-434b-4512-84b8-4a9732085818"
      unitRef="shares">32664000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjQtMS0xLTEtNzg2MDg_3d9238de-8004-4c06-bfdf-5a8a13ce91d7"
      unitRef="usdPerShare">2.56</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjQtMy0xLTEtNzg2MDg_8b1e4735-377b-4894-a1e8-703b75f37d51"
      unitRef="usdPerShare">2.25</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjQtNS0xLTEtNzg2MDg_ec726d5a-f164-423f-8477-4fe7a963b416"
      unitRef="usdPerShare">2.53</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjUtMS0xLTEtNzg2MDg_4ef02667-4938-47df-9893-a36672b816db"
      unitRef="usdPerShare">0</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjUtMy0xLTEtNzg2MDg_ee9d42e9-89f2-4df3-a2ac-87046ae1d765"
      unitRef="usdPerShare">0.04</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjUtNS0xLTEtNzg2MDg_1fa853a4-1649-48bc-a48f-2f8077da11b9"
      unitRef="usdPerShare">-0.57</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjYtMS0xLTEtNzg2MDg_1aceea50-32cb-4d25-ae92-718481877e40"
      unitRef="usdPerShare">2.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjYtMy0xLTEtNzg2MDg_88a1a3d6-ab0b-47af-a765-da04f81caa50"
      unitRef="usdPerShare">2.29</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjYtNS0xLTEtNzg2MDg_76ff9d2d-6bc7-4dc2-833b-238b1f7c7977"
      unitRef="usdPerShare">1.96</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjctMS0xLTEtNzg2MDg_b28ac17e-80c2-4f37-991c-2a93fdcf7805"
      unitRef="shares">32192000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjctMy0xLTEtNzg2MDg_eabb3a30-93cd-4b83-a708-ccbca78e26c8"
      unitRef="shares">33054000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83MC9mcmFnOjljYzE5MDI1Njg2NjRhN2I5M2M5MGIxYzYyNDhiYjI1L3RhYmxlOjVjODIyN2VjMGM3OTQwYTI5OWNjYjNlNGI5M2MxZWFhL3RhYmxlcmFuZ2U6NWM4MjI3ZWMwYzc5NDBhMjk5Y2NiM2U0YjkzYzFlYWFfMjctNS0xLTEtNzg2MDg_e2ca5a60-74f6-4926-998a-b5305f084c7b"
      unitRef="shares">32918000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi0xLTEtMS03ODYwOA_200bead6-e53b-4ab6-946e-d81d9246a0b6"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i60c7ad643ee24947a0507767fd7af229_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi0xLTEtMS03ODYwOA_b93e06df-b4c2-4030-b2cf-7e35d020f837"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi0zLTEtMS03ODYwOA_9d741c8e-1b2c-4778-9d17-3493121f5a4c"
      unitRef="usd">75629000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfMi01LTEtMS03ODYwOA_b6d14b7c-20ec-42b0-9c84-8c3e5d2b81be"
      unitRef="usd">64566000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNC0xLTEtMS03ODYwOA_e7e3f1d1-6e3a-482d-9bb5-e491f79b8244"
      unitRef="usd">-5022000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNC0zLTEtMS03ODYwOA_1d870706-e4e3-4bf5-bc23-c7ae37b5e576"
      unitRef="usd">2512000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNC01LTEtMS03ODYwOA_5bf3787e-437b-4a9f-a9f6-eac869c3bf52"
      unitRef="usd">3301000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNy0xLTEtMS03ODYwOA_f453f4ac-6aa4-4f16-8081-cdcf9e38d87e"
      unitRef="usd">-1403000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNy0zLTEtMS03ODYwOA_60321b83-cacb-417b-8ecd-684f5ef07272"
      unitRef="usd">-136000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfNy01LTEtMS03ODYwOA_eb9e194c-4166-40e5-b625-a983af43529b"
      unitRef="usd">371000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOC0xLTEtMS03ODYwOA_5bccb4e5-0e3b-4d9d-9572-9d9c8d2b665c"
      unitRef="usd">-3619000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOC0zLTEtMS03ODYwOA_7046162d-c09e-4da5-aa9b-c0a6699f6aac"
      unitRef="usd">2648000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOC01LTEtMS03ODYwOA_f49839f8-070f-4894-9621-2cec514f6eb1"
      unitRef="usd">2930000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOS0xLTEtMS03ODYwOA_70a5317f-c19e-4638-b40b-ef523954020c"
      unitRef="usd">78787000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOS0zLTEtMS03ODYwOA_0b19a010-e1cd-4fa6-83bb-9aa40ba487fe"
      unitRef="usd">78277000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83My9mcmFnOmQzYjEyNjBmNzY3NTRiMzFhYjU5ZmFmODlkNWU1NGYwL3RhYmxlOmY3ZTdhNmRjNjVhYjQzYzdiOGVmYzI1NWQ5NjgzYzZkL3RhYmxlcmFuZ2U6ZjdlN2E2ZGM2NWFiNDNjN2I4ZWZjMjU1ZDk2ODNjNmRfOS01LTEtMS03ODYwOA_52546951-a866-426c-b9e1-fd0910fea0d2"
      unitRef="usd">67496000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMy0xLTEtMS03ODYwOA_75249736-62de-4357-8eb4-d4732dc2e20a"
      unitRef="usd">17608000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMy0zLTEtMS03ODYwOA_e1d34af8-3b39-4b1c-be54-607c6b102ed2"
      unitRef="usd">12849000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOmJlZDM2MDJkZWEzNjQyMDJhY2E0NGNiODUyNjEzYTRkXzQ2_b5cb4350-0326-4d48-bc55-14eeac03c084"
      unitRef="usd">3746000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOmJlZDM2MDJkZWEzNjQyMDJhY2E0NGNiODUyNjEzYTRkXzU0_f8e6f7cf-7f7e-4210-a9bb-317ceb601af3"
      unitRef="usd">3738000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0xLTEtMS03ODYwOA_d5b39494-595d-4bcd-82e8-5388a7d4d5cc"
      unitRef="usd">217156000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNC0zLTEtMS03ODYwOA_b72fa3d7-b9b3-4922-9971-2916c6d64054"
      unitRef="usd">236444000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNS0xLTEtMS03ODYwOA_62311451-5732-4449-b5f0-6c60552e4c6d"
      unitRef="usd">170360000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNS0zLTEtMS03ODYwOA_ce29fc25-5db0-4e89-8677-2a14413028fb"
      unitRef="usd">176207000</us-gaap:InventoryNet>
    <us-gaap:OtherAssetsCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNi0xLTEtMS03ODYwOA_85f021b7-a985-433a-8c60-c93e2c1b5bf2"
      unitRef="usd">18813000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfNi0zLTEtMS03ODYwOA_f940089a-beea-4303-ac51-8c7e206ef5bf"
      unitRef="usd">21467000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOC0xLTEtMS03ODYwOA_7eacf93e-3bf1-4368-bbd3-658d376430ed"
      unitRef="usd">423937000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOC0zLTEtMS03ODYwOA_0baa1f74-902c-4a55-89be-152f2e37e459"
      unitRef="usd">446967000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOS0xLTEtMS03ODYwOA_38420e18-e25f-4152-8520-d651431d03c2"
      unitRef="usd">109584000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfOS0zLTEtMS03ODYwOA_0a4e0748-2f7c-47d6-a0bd-60a3efc393e2"
      unitRef="usd">96885000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTAtMS0xLTEtNzg2MDg_e5b7642c-8cb8-458b-ba34-e64cf6cbe964"
      unitRef="usd">26502000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTAtMy0xLTEtNzg2MDg_0f5618db-f9e6-47cc-b311-ea7599a61366"
      unitRef="usd">18120000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTEtMS0xLTEtNzg2MDg_b8ee24b7-16f6-4603-8ce5-08b4e44df4d1"
      unitRef="usd">512363000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTEtMy0xLTEtNzg2MDg_cb236671-2ec3-460a-8202-f63381f1db78"
      unitRef="usd">510942000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTItMS0xLTEtNzg2MDg_4684de4c-4e99-4bbd-b4fa-77e60fa2f079"
      unitRef="usd">137526000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTItMy0xLTEtNzg2MDg_f525ac09-244c-458e-ab21-d6e8247baf24"
      unitRef="usd">141504000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTMtMS0xLTEtNzg2MDg_8fbced84-794e-4e2b-874e-a50391f97f77"
      unitRef="usd">701000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTMtMy0xLTEtNzg2MDg_c1fb6e69-3d8f-47b2-b880-e7eec847d43e"
      unitRef="usd">483000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTUtMS0xLTEtNzg2MDg_d0aaf9bf-2a12-4069-81df-8cf7409a275c"
      unitRef="usd">1210613000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTUtMy0xLTEtNzg2MDg_136041f2-dd20-41e2-aafd-b5221c23cbc4"
      unitRef="usd">1214901000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTgtMS0xLTEtNzg2MDg_f5b726c8-902c-40f0-b057-53f02faeb9ac"
      unitRef="usd">106582000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTgtMy0xLTEtNzg2MDg_be784273-5846-4e8e-9fa1-6ee5e9f205e7"
      unitRef="usd">172286000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTktMS0xLTEtNzg2MDg_800d3448-0553-4a03-af8a-fedbdd22b925"
      unitRef="usd">73721000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMTktMy0xLTEtNzg2MDg_3089e7fe-0d15-4906-9fd6-3ceb0b92b6b7"
      unitRef="usd">67993000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjAtMS0xLTEtNzg2MDg_fcfd99bb-247d-4282-bf10-4efc8f9b6cbc"
      unitRef="usd">35017000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjAtMy0xLTEtNzg2MDg_f77bf9ba-6757-48a4-90e8-35f5bb2a9169"
      unitRef="usd">46711000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjMtMS0xLTEtNzg2MDg_f7e7d440-f836-4858-bc54-65f6bf848168"
      unitRef="usd">215320000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjMtMy0xLTEtNzg2MDg_3c980242-d3cf-4838-a573-66b57012b81b"
      unitRef="usd">286990000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjQtMS0xLTEtNzg2MDg_6adabee6-e2d6-41fe-af73-d591f511c9ec"
      unitRef="usd">88762000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjQtMy0xLTEtNzg2MDg_8697d2fb-adae-4a24-abdb-6e51b211b7f5"
      unitRef="usd">23781000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjUtMS0xLTEtNzg2MDg_73ba95a0-6c55-467c-8905-5e775c92e63e"
      unitRef="usd">47088000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjUtMy0xLTEtNzg2MDg_127679a5-c587-4efb-9e26-5c83fb5253a5"
      unitRef="usd">40278000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjYtMS0xLTEtNzg2MDg_609b6d55-4e28-4fdf-8d0e-c261b8850ab2"
      unitRef="usd">19041000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjYtMy0xLTEtNzg2MDg_aa8e1884-e803-4c9d-923d-a51e4f57da2a"
      unitRef="usd">11390000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjctMS0xLTEtNzg2MDg_1cabdac1-b92a-47e0-9a94-0033f0bb2345"
      unitRef="usd">18303000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMjctMy0xLTEtNzg2MDg_6b461556-238f-4ec7-a3bf-9007887d77b9"
      unitRef="usd">27204000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl8yMQ_2e88e7ed-4ca7-4fd8-9c2a-47c280c5a2c5"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl8yMQ_a1a45920-c098-4534-93e1-496192696d8c"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl80Ng_15f5f285-4c44-45af-a658-7f4213d95687"
      unitRef="shares">10000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl80Ng_c1a9af0a-600d-4ec6-a0f9-bee340beec87"
      unitRef="shares">10000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl81Nw_0d16d8a2-6c2d-4632-a89a-0408701248c4"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZWU4ZDI0ZWI0MGY0Yjk1ODY5NzBiMTdmYmM5NTcxYl81Nw_8f9ded13-0b31-434e-a85a-5d5f16bff961"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMS0xLTEtNzg2MDg_f61ae1ae-f464-4cd5-9bf6-e9dcaaf51353"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzAtMy0xLTEtNzg2MDg_efaf84fc-8e49-4266-8f09-c64195cc37d4"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N18xOA_3e02424d-db72-46c1-ba71-50b82aec1f59"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N18xOA_762cd482-e009-40db-a858-5747c6334593"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N180Mw_df6fa550-ccea-4eef-bd18-42487c44461e"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N183NA_87f83f9e-a12b-43fc-bc11-ce08d8c7d80a"
      unitRef="shares">34060000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N183NA_a15a27cd-ce7c-476b-ad65-dd39aba57c45"
      unitRef="shares">34060000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N184MQ_181d5c3e-c63c-46f2-ab9f-5c5ca4e53cbb"
      unitRef="shares">33799000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo2ZDkyNjZiZjRlY2Q0YjI0OTQ4NDIyZDhlYjEyMDg2N184MQ_d64a2439-b8d3-4d7c-b975-79d6cfee4803"
      unitRef="shares">33799000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMS0xLTEtNzg2MDg_dceb4838-bc02-4d47-83b2-9b9da0e50a1f"
      unitRef="usd">340000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzEtMy0xLTEtNzg2MDg_62a76d83-a2bd-4a15-869f-f9754d6ec006"
      unitRef="usd">338000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzItMS0xLTEtNzg2MDg_8bd21eba-98c5-4ec4-b238-d0e0c39f5cff"
      unitRef="usd">322873000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzItMy0xLTEtNzg2MDg_e030a649-9ba0-4d8a-bd5d-62ba3c7aa546"
      unitRef="usd">314541000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzMtMS0xLTEtNzg2MDg_97a92ff7-ba10-4bca-aa2d-5d7e597ef32f"
      unitRef="usd">627978000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzMtMy0xLTEtNzg2MDg_f253b6ff-33be-431e-9486-7eb6dce626bc"
      unitRef="usd">545572000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzQtMS0xLTEtNzg2MDg_b770cb1a-ab15-4c05-bc34-803545820d4f"
      unitRef="usd">-3432000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzQtMy0xLTEtNzg2MDg_63c14ecc-c7d9-46ed-af0c-0086eb2a135c"
      unitRef="usd">187000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:TreasuryStockShares
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyZjljYjZkOTFmNTY0YzQzOWU5YWQxMDlmMDQ4NjcyZV8xMg_c43acdd5-0222-44fe-a28b-3778b8f6cd7a"
      unitRef="shares">3199000</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyZjljYjZkOTFmNTY0YzQzOWU5YWQxMDlmMDQ4NjcyZV8xOQ_ec46c6fd-1c75-4e76-b510-bd9ed9fe5b72"
      unitRef="shares">1107000</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMS0xLTEtNzg2MDg_368a517d-7f31-44aa-9c5f-984b48d3ba1f"
      unitRef="usd">125660000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzUtMy0xLTEtNzg2MDg_43586c95-234d-4a50-b600-f34b0a55bb53"
      unitRef="usd">35380000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzYtMS0xLTEtNzg2MDg_b029e7fc-e420-4dd3-b389-03aaa11335df"
      unitRef="usd">822099000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzYtMy0xLTEtNzg2MDg_9e8ad638-8b92-465f-948f-c91e520eca1c"
      unitRef="usd">825258000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzctMS0xLTEtNzg2MDg_45e35dd9-d790-409a-9a62-1d9489000e6e"
      unitRef="usd">1210613000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83Ni9mcmFnOjAzNjBkMjA1OTkyZTQ2YTY5NGM0N2VmZmVmZDlhMzU3L3RhYmxlOjY4ZWY1NWQwZWMwYjQxZDNhODM2MmY2YTVlMDliMTY4L3RhYmxlcmFuZ2U6NjhlZjU1ZDBlYzBiNDFkM2E4MzYyZjZhNWUwOWIxNjhfMzctMy0xLTEtNzg2MDg_86b2c98d-b08f-4f52-874d-f93b8ac2c235"
      unitRef="usd">1214901000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMy0xLTEtMS03ODYwOA_4ebf1f23-ce63-495b-9209-14574cf2a387"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMy0zLTEtMS03ODYwOA_0dae0be1-1b4f-44e2-8f9d-ef567f2a3eb8"
      unitRef="usd">75629000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMy01LTEtMS03ODYwOA_a8b628e0-3444-453a-8064-9cbc9ccd506b"
      unitRef="usd">64566000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNC0xLTEtMS03ODYwOA_f6ac9b0c-6cb2-439b-b995-90a3206dad8c"
      unitRef="usd">0</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNC0zLTEtMS03ODYwOA_1e8c5098-cf0c-4916-8886-1849008f3821"
      unitRef="usd">1113000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNC01LTEtMS03ODYwOA_e9749107-a3f9-4464-8ba9-1b1fb73ae9e7"
      unitRef="usd">-18725000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNS0xLTEtMS03ODYwOA_91492c3d-a34a-4efc-ae91-a2930d55980b"
      unitRef="usd">82406000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNS0zLTEtMS03ODYwOA_9cbc70a3-f6a3-4175-89d1-f7dde4ab913d"
      unitRef="usd">74516000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNS01LTEtMS03ODYwOA_d79fd951-bd8e-491b-80ad-427593b0a23d"
      unitRef="usd">83291000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNy0xLTEtMS03ODYwOA_0f89f90b-a826-4763-bc70-ecfe3b21e9e8"
      unitRef="usd">26167000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNy0zLTEtMS03ODYwOA_c74cc60e-3dd2-4e87-a568-05ba9886347c"
      unitRef="usd">31966000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNy01LTEtMS03ODYwOA_500b768d-3a67-433b-ba1c-7e635f7498f5"
      unitRef="usd">20915000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOC0xLTEtMS03ODYwOA_4736fa6c-eedb-46fc-909c-427020ccd8de"
      unitRef="usd">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOC0zLTEtMS03ODYwOA_bfaba4eb-df89-431b-aa11-a3ce485b10fc"
      unitRef="usd">8300000</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOC01LTEtMS03ODYwOA_264ee3b4-3efa-4b5d-98da-1a8856beeaef"
      unitRef="usd">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOS0xLTEtMS03ODYwOA_c86b56af-db1a-47a1-a477-941ecdd8026b"
      unitRef="usd">-13990000</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOS0zLTEtMS03ODYwOA_7af92475-a373-476c-ab8f-6fe5eb93d114"
      unitRef="usd">0</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfOS01LTEtMS03ODYwOA_34231174-76bd-46b7-8e48-6f4b14a37ba9"
      unitRef="usd">0</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:ShareBasedCompensation
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTAtMS0xLTEtNzg2MDg_0b156e58-b01d-4a56-9b9d-b6d39bf8156f"
      unitRef="usd">8334000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTAtMy0xLTEtNzg2MDg_47988a9f-ba3b-4e91-81f6-da0a7834bd7a"
      unitRef="usd">8652000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTAtNS0xLTEtNzg2MDg_9bec1bbb-a9c9-447c-99a5-b5a9e0147969"
      unitRef="usd">8173000</us-gaap:ShareBasedCompensation>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTItMS0xLTEtNzg2MDg_92eacea6-771f-4f67-932e-bcb732aa237e"
      unitRef="usd">2276000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTItMy0xLTEtNzg2MDg_ade7f985-63c3-4300-9a6b-2807b5dd74d1"
      unitRef="usd">1193000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTItNS0xLTEtNzg2MDg_017b4f44-279f-467a-904a-84dc862dafea"
      unitRef="usd">493000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTMtMS0xLTEtNzg2MDg_449dd7cc-5089-41e0-8537-9342f60d47a8"
      unitRef="usd">6337000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTMtMy0xLTEtNzg2MDg_5cde3db0-0de6-4295-aadb-53e1f12a2f6d"
      unitRef="usd">2968000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTMtNS0xLTEtNzg2MDg_29f4936b-c782-4e10-a72d-2ccc25e5d623"
      unitRef="usd">3786000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTQtMS0xLTEtNzg2MDg_7b03feba-c534-4fe8-b159-c5edaffc503d"
      unitRef="usd">-1506000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTQtMy0xLTEtNzg2MDg_8d0811a0-bc76-49d1-aec8-bebfa74857c8"
      unitRef="usd">-1570000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTQtNS0xLTEtNzg2MDg_317102c7-810d-41c1-8e02-e823cb1c17cd"
      unitRef="usd">-63000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTYtMS0xLTEtNzg2MDg_da0b333a-0590-489a-9a00-5e313249e1e9"
      unitRef="usd">-32754000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTYtMy0xLTEtNzg2MDg_f16225ce-209c-4668-b304-554261b424f7"
      unitRef="usd">41887000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTYtNS0xLTEtNzg2MDg_edcaa538-112e-48ef-b4df-136ffc9b8cbd"
      unitRef="usd">-2277000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTctMS0xLTEtNzg2MDg_21803dac-fe3f-420c-8528-5a1712d4ea8d"
      unitRef="usd">-14377000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTctMy0xLTEtNzg2MDg_b8d1e85b-477c-4723-b66d-43228968e7fe"
      unitRef="usd">85763000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTctNS0xLTEtNzg2MDg_5ff36b70-447e-44ef-a8fc-ca1f14e1259e"
      unitRef="usd">5719000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTgtMS0xLTEtNzg2MDg_689c95ee-7919-43d6-9c1c-99f4a9383262"
      unitRef="usd">-2062000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTgtMy0xLTEtNzg2MDg_7ada2bd1-451d-435f-87ba-ac363a80d490"
      unitRef="usd">426000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTgtNS0xLTEtNzg2MDg_6420a85a-9546-4398-a5ba-4d099c0a9ab9"
      unitRef="usd">-5467000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTktMS0xLTEtNzg2MDg_dbcf8202-2fbc-4983-8bb4-33eb07f96f6f"
      unitRef="usd">-76260000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTktMy0xLTEtNzg2MDg_032fda4d-6a7c-4287-a19e-3a0d54a440a4"
      unitRef="usd">38367000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMTktNS0xLTEtNzg2MDg_3f5fafec-5253-4578-a091-e31aba113fa2"
      unitRef="usd">-1160000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjAtMS0xLTEtNzg2MDg_829a718a-a672-4a41-af43-993d1749ff92"
      unitRef="usd">-11258000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjAtMy0xLTEtNzg2MDg_ab122528-e256-4313-a10c-f711fa49ebed"
      unitRef="usd">-14384000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjAtNS0xLTEtNzg2MDg_8ad63f1a-c339-4afd-a48a-72f3c6ef715f"
      unitRef="usd">-44570000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjEtMS0xLTEtNzg2MDg_0b54a44c-37f1-4f8d-9ce3-2631bb6c1a81"
      unitRef="usd">102691000</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjEtMy0xLTEtNzg2MDg_1296e95b-2aff-4586-b9f4-a3dc35049eb0"
      unitRef="usd">25072000</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjEtNS0xLTEtNzg2MDg_a6b2e882-abd0-4f70-bc13-b0fdabe79ddd"
      unitRef="usd">73016000</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjItMS0xLTEtNzg2MDg_0b64ff6b-6f0e-474d-aace-0f74b1683feb"
      unitRef="usd">0</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjItMy0xLTEtNzg2MDg_32c5626c-3973-40b5-8fdf-34bc33321673"
      unitRef="usd">-2002000</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjItNS0xLTEtNzg2MDg_a5041a22-cc75-48d7-8cc6-5f442ddc0863"
      unitRef="usd">16088000</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjMtMS0xLTEtNzg2MDg_1447b96f-3602-4cc8-a804-c5ce4ab7bac7"
      unitRef="usd">102691000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjMtMy0xLTEtNzg2MDg_41e49b71-c798-4abe-93c3-e4ba1f6bf545"
      unitRef="usd">23070000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjMtNS0xLTEtNzg2MDg_511c08ed-1edc-461a-bc52-a864ae22c200"
      unitRef="usd">89104000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <rock:PaymentsToAcquirePropertyPlantAndEquipmentNet
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjUtMS0xLTEtNzg2MDg_2474288c-664f-42e9-b86d-a1138c25f9fe"
      unitRef="usd">20062000</rock:PaymentsToAcquirePropertyPlantAndEquipmentNet>
    <rock:PaymentsToAcquirePropertyPlantAndEquipmentNet
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjUtMy0xLTEtNzg2MDg_c84183bc-cd86-4c13-912e-1bed074e436a"
      unitRef="usd">17491000</rock:PaymentsToAcquirePropertyPlantAndEquipmentNet>
    <rock:PaymentsToAcquirePropertyPlantAndEquipmentNet
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjUtNS0xLTEtNzg2MDg_a020133d-6279-4e43-89c6-637637a77e9a"
      unitRef="usd">12991000</rock:PaymentsToAcquirePropertyPlantAndEquipmentNet>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjYtMS0xLTEtNzg2MDg_7b1d5431-3c82-402f-9704-df2449df5dac"
      unitRef="usd">51621000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjYtMy0xLTEtNzg2MDg_05ae5879-16d8-4a52-a384-0e5d49ab4448"
      unitRef="usd">-4143000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjYtNS0xLTEtNzg2MDg_e2879c9c-bb01-43a4-843f-a3ae0a51f832"
      unitRef="usd">313686000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjgtMS0xLTEtNzg2MDg_28cf93c5-2d14-4efa-a168-8dd9cd2a68e3"
      unitRef="usd">0</us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested>
    <us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjgtMy0xLTEtNzg2MDg_051edf10-5353-4b4c-85ab-12e07b62656c"
      unitRef="usd">38062000</us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested>
    <us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMjgtNS0xLTEtNzg2MDg_f8786a31-cde4-4123-a8d1-3d5b2afe5af5"
      unitRef="usd">2000000</us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested>
    <us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzAtMS0xLTEtNzg2MDg_f2fc8998-7de0-49e2-b5b3-babd47cddf62"
      unitRef="usd">-71683000</us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzAtMy0xLTEtNzg2MDg_692a4178-65bc-4ee4-aecd-069e030cedaf"
      unitRef="usd">24714000</us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzAtNS0xLTEtNzg2MDg_97ef96f7-c410-4e8e-87e5-01074e1c33df"
      unitRef="usd">-324677000</us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations>
    <us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzEtMS0xLTEtNzg2MDg_4c05c38b-75f7-49f6-9179-49164248c8fb"
      unitRef="usd">0</us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzEtMy0xLTEtNzg2MDg_cd9b8411-389b-48f9-a2d7-c4631f54cf99"
      unitRef="usd">-176000</us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzEtNS0xLTEtNzg2MDg_a5b30cdd-0134-42eb-8245-2477f5eb96d4"
      unitRef="usd">-2033000</us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzItMS0xLTEtNzg2MDg_c0315aa7-9138-4f38-bb7a-dda7b6e44000"
      unitRef="usd">-71683000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzItMy0xLTEtNzg2MDg_17a80178-1b05-4dab-90cd-b67654e1f454"
      unitRef="usd">24538000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzItNS0xLTEtNzg2MDg_dbfc2c1a-d9f0-416c-9730-e24335cd6dce"
      unitRef="usd">-326710000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzQtMS0xLTEtNzg2MDg_6622033d-79c7-4fcb-8663-711b180c210d"
      unitRef="usd">138000000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzQtMy0xLTEtNzg2MDg_f030ec2d-1a0b-4df2-b46b-8730dffb5b0a"
      unitRef="usd">120636000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzQtNS0xLTEtNzg2MDg_46e2bd06-9ea0-42da-8683-97797494e09b"
      unitRef="usd">0</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzUtMS0xLTEtNzg2MDg_97d326b6-3498-4ad6-b44b-d65cecc38676"
      unitRef="usd">204500000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzUtMy0xLTEtNzg2MDg_544d3ed9-61cb-4e14-86b1-23de5906449e"
      unitRef="usd">59500000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzUtNS0xLTEtNzg2MDg_02e7661a-7e70-4f45-b70c-7129f7a5d963"
      unitRef="usd">85000000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzctMS0xLTEtNzg2MDg_a66ba3e4-ce1b-4947-a4c6-e9fab210b2ba"
      unitRef="usd">2013000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzctMy0xLTEtNzg2MDg_bba3cfd7-6136-4a71-b553-27ee4208e1e5"
      unitRef="usd">0</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzctNS0xLTEtNzg2MDg_4f20cece-dcfc-4928-a024-391be2edcf6c"
      unitRef="usd">0</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzgtMS0xLTEtNzg2MDg_8705915f-0e48-4e62-82ee-5af2252a7842"
      unitRef="usd">89494000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzgtMy0xLTEtNzg2MDg_fac0e2ab-b07f-4619-bf76-0edccca04191"
      unitRef="usd">6497000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfMzgtNS0xLTEtNzg2MDg_3202c2f3-b1df-4a1e-82a7-528fcd558460"
      unitRef="usd">6656000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDAtMS0xLTEtNzg2MDg_f49fee3e-fe12-4a53-ad71-d3e180ea6941"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDAtMy0xLTEtNzg2MDg_813d2290-0dce-4df5-9251-7deed1c6fcc8"
      unitRef="usd">1021000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDAtNS0xLTEtNzg2MDg_a9c6d49c-3a74-4b8f-b035-ceb06c0871e8"
      unitRef="usd">1119000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDEtMS0xLTEtNzg2MDg_602276b4-e07b-4713-9601-348ae6f2c210"
      unitRef="usd">-25007000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDEtMy0xLTEtNzg2MDg_a9c00518-461a-483e-943c-334fe4e9b4bf"
      unitRef="usd">-66612000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDEtNS0xLTEtNzg2MDg_9db3d2ec-5343-4d48-baa5-d79656f49613"
      unitRef="usd">79463000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDItMS0xLTEtNzg2MDg_e808881b-846f-4e49-88d0-a8beb10a8556"
      unitRef="usd">-1242000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDItMy0xLTEtNzg2MDg_7551edfb-0205-4175-8ca4-b355a2928ec1"
      unitRef="usd">-201000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDItNS0xLTEtNzg2MDg_ef70f084-fc7c-49a3-9928-64f1e3264b6c"
      unitRef="usd">-1166000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDMtMS0xLTEtNzg2MDg_ebfcad7e-fea3-4a10-afb2-145528d79d3d"
      unitRef="usd">4759000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDMtMy0xLTEtNzg2MDg_f5c8515e-16f4-462b-96c0-6e8c77def2d6"
      unitRef="usd">-19205000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDMtNS0xLTEtNzg2MDg_0804e0bc-2e20-45b7-94c2-1bbe22ef9693"
      unitRef="usd">-159309000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDQtMS0xLTEtNzg2MDg_5158f070-5f93-4579-bcb7-1c40396ce203"
      unitRef="usd">12849000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDQtMy0xLTEtNzg2MDg_d73cd7df-9a71-45ec-bedd-80cc6b623d29"
      unitRef="usd">32054000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDQtNS0xLTEtNzg2MDg_9aa25dcd-9484-4758-864a-fcee9daf1aa2"
      unitRef="usd">191363000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDUtMS0xLTEtNzg2MDg_488a260a-398b-495d-b2c6-41882f17e815"
      unitRef="usd">17608000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDUtMy0xLTEtNzg2MDg_4c17c525-0dad-4635-bcf7-ea9149f26448"
      unitRef="usd">12849000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl83OS9mcmFnOjZjM2FkZDMwNDE1MDQ3YjRhYjQ2YTBmYmQxOTdkZjIxL3RhYmxlOmUzNDQ2YmNkMTNkNzQwZWM4MWE2YjZkNzk2NTZiN2Q1L3RhYmxlcmFuZ2U6ZTM0NDZiY2QxM2Q3NDBlYzgxYTZiNmQ3OTY1NmI3ZDVfNDUtNS0xLTEtNzg2MDg_5e6f6005-0780-4b84-9abf-fbb196ad5b49"
      unitRef="usd">32054000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:SharesIssued
      contextRef="i1f2f9cce6699404a833413104919ce4e_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xLTEtMS03ODYwOA_3d428ff5-a96d-4d85-85ec-c7186f6943a5"
      unitRef="shares">33192000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i1f2f9cce6699404a833413104919ce4e_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0zLTEtMS03ODYwOA_d9f92a1f-d5a2-499c-8a70-1e73419535cd"
      unitRef="usd">332000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie3983509898c478e9a8bbecfe502ed64_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi01LTEtMS03ODYwOA_b1daf794-def4-441e-a45e-1119fae1ae9f"
      unitRef="usd">295582000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5122901a55b04dbfae33f1597b75c66b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi03LTEtMS03ODYwOA_bc1790e6-9f44-4f07-9037-6537081dd146"
      unitRef="usd">405668000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i123074e2cd1c4e7186ee79d3e7db5e8f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi05LTEtMS03ODYwOA_fa52d035-0cff-49ca-bf01-74e0901a8808"
      unitRef="usd">-5391000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="ie30e8dc0ac464faea642c432df7aef2f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xMS0xLTEtNzg2MDg_0e40797d-9494-41b2-b348-0bcd8820512d"
      unitRef="shares">906000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="ie30e8dc0ac464faea642c432df7aef2f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xMy0xLTEtNzg2MDg_0e35dc66-82a4-4ad3-b419-7363d883245e"
      unitRef="usd">-22227000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMi0xNS0xLTEtNzg2MDg_1f828309-745c-4202-9bde-62e7410e2eae"
      unitRef="usd">673964000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i7e6fbd0487c147e2a4c30cd05cb44d5b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMy03LTEtMS03ODYwOA_24423d67-2e15-420e-820b-243f7bbff6d7"
      unitRef="usd">64566000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMy0xNS0xLTEtNzg2MDg_03c116d1-5c4c-42ed-90f4-9dc613b4fb47"
      unitRef="usd">64566000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ifb0e745a89424ceb9337a1ba7911fd78_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNC05LTEtMS03ODYwOA_83663843-7e4c-4c76-a0eb-7e159e7289ac"
      unitRef="usd">3301000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNC0xNS0xLTEtNzg2MDg_25494603-e06c-4604-91f7-9f2eaedf190a"
      unitRef="usd">3301000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNS0wLTEtMS03ODYwOC90ZXh0cmVnaW9uOjRkMWE0YjdhNzYxYzRiNTliZjU5YWQyMGY0ZGE2MTA3Xzcw_f9f3606a-56e6-4695-aba7-8b930430a86a"
      unitRef="usd">116000</rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ifb0e745a89424ceb9337a1ba7911fd78_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNS05LTEtMS03ODYwOA_ca2181d6-661c-49f8-be1e-c207ced05ee6"
      unitRef="usd">371000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNS0xNS0xLTEtNzg2MDg_e7ea47eb-f99d-4670-b4e1-8f35146262de"
      unitRef="usd">371000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNi01LTEtMS03ODYwOA_84a3bced-001a-43e6-87d2-eaf33f18e779"
      unitRef="usd">8173000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNi0xNS0xLTEtNzg2MDg_649788c3-5f01-4619-a31e-07b4da3f2122"
      unitRef="usd">8173000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockholdersEquity
      contextRef="i04634afcd3c9491d8d455f2951443e11_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNy03LTEtMS03ODYwOA_43536f07-ffc3-480a-a7ca-b826ab43a283"
      unitRef="usd">-291000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if6775c337c2142e0a43f6f90bd4d2fb5_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNy05LTEtMS03ODYwOA_b02b3487-069a-4ff7-be71-529a78cc7771"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic54cbd171db94113b88cdb36b6ee6d76_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfNy0xNS0xLTEtNzg2MDg_bd4febaf-31d6-4042-af68-10895f54f301"
      unitRef="usd">-291000</us-gaap:StockholdersEquity>
    <rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement
      contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xLTEtMS03ODYwOA_2b1f7939-44c0-480b-89bc-a946b319f65a"
      unitRef="shares">296000</rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0zLTEtMS03ODYwOA_9e3fbd77-e3f9-4877-94b0-1bb59541ef76"
      unitRef="usd">-4000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC01LTEtMS03ODYwOA_8812d521-2695-489f-a99e-55bba56a308c"
      unitRef="usd">4000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement
      contextRef="ia63844f3738a4b5db27035bc3b17fbd0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xMS0xLTEtNzg2MDg_80041df7-184e-4aa4-9d3a-278b7a799e92"
      unitRef="shares">122000</rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="ia63844f3738a4b5db27035bc3b17fbd0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xMy0xLTEtNzg2MDg_4b528b18-932a-4d6d-b67b-b6132904c121"
      unitRef="usd">6656000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOC0xNS0xLTEtNzg2MDg_2c71b6fb-bfbf-490f-8160-4e13e1d2bf13"
      unitRef="usd">6656000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <us-gaap:StockIssuedDuringPeriodSharesOther
      contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfOS0xLTEtMS03ODYwOA_40311181-374a-412c-a953-cee0614fe898"
      unitRef="shares">4000</us-gaap:StockIssuedDuringPeriodSharesOther>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="if038940b24e74becbd01d4036d04d9d6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTAtMS0xLTEtNzg2MDg_f3e6dfd2-1088-489e-8959-ea214d7d0ad5"
      unitRef="shares">76000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i0a8b8fb0f5d14561a3481943205408fb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTAtNS0xLTEtNzg2MDg_f2eb5219-6eca-4866-96b7-b11233d86852"
      unitRef="usd">1119000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTAtMTUtMS0xLTc4NjA4_fc225580-fb1c-4187-84b2-e8b4bd38ccac"
      unitRef="usd">1119000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:SharesIssued
      contextRef="ifbd110efb3794f18a6cc54166c3ba701_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMS0xLTEtNzg2MDg_36f0f330-11a2-4e10-97fa-712db034b839"
      unitRef="shares">33568000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="ifbd110efb3794f18a6cc54166c3ba701_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMy0xLTEtNzg2MDg_f86ebe3b-ab96-4ea2-9ce8-a86443dc6c85"
      unitRef="usd">336000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic70acb87500f4a79946405a1f6a58999_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtNS0xLTEtNzg2MDg_ef77e9de-db2e-4204-bec3-979d2dc5a3c8"
      unitRef="usd">304870000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i50e273bab9d543bc8f7e428b18676a56_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtNy0xLTEtNzg2MDg_5d210795-4f00-4d85-aafe-c8265ffb0b28"
      unitRef="usd">469943000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5effa7766b414823a6b37abacb899a66_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtOS0xLTEtNzg2MDg_46177d46-32cd-4d37-86c1-c1522cfe7ea7"
      unitRef="usd">-2461000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="i5e7a6b0d487c42e989ebef27fc419fc0_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMTEtMS0xLTc4NjA4_6cb6452a-2731-4ec9-925d-9bf5af1c26f4"
      unitRef="shares">1028000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i5e7a6b0d487c42e989ebef27fc419fc0_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMTMtMS0xLTc4NjA4_194b3cf6-b3ad-458d-97b4-18ad6f1e9ae6"
      unitRef="usd">-28883000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTEtMTUtMS0xLTc4NjA4_481feb93-7560-4f85-b0c1-88208a5aa388"
      unitRef="usd">743805000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i7bc646f1a61c478c89b5f830797418fa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTItNy0xLTEtNzg2MDg_3f162066-305d-44e6-a9b8-57933ddf33f6"
      unitRef="usd">75629000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTItMTUtMS0xLTc4NjA4_8a85517b-e87f-4cef-8268-6f6689944f0a"
      unitRef="usd">75629000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i24dc19df42dc4e49a91f11718670da8b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTMtOS0xLTEtNzg2MDg_a10aea8c-c088-491a-87bd-35e748921e96"
      unitRef="usd">2512000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTMtMTUtMS0xLTc4NjA4_34c7ec07-dd4d-4659-a3c9-186ad117c3fe"
      unitRef="usd">2512000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjpkN2FjN2M4NzkxYmY0NTY4YjU4OTMxNzNjOTMxZTZjMV83MA_19fec171-71bf-4ae8-82e3-fad164e8f0d9"
      unitRef="usd">43000</us-gaap:OtherComprehensiveIncomeLossTax>
    <rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjpkN2FjN2M4NzkxYmY0NTY4YjU4OTMxNzNjOTMxZTZjMV83MA_a0643f32-75ff-494a-a96a-2ce9354af97c"
      unitRef="usd">-43000</rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i24dc19df42dc4e49a91f11718670da8b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtOS0xLTEtNzg2MDg_6f6b2ef9-201e-4a0d-96e0-ae25641f7c42"
      unitRef="usd">-136000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTQtMTUtMS0xLTc4NjA4_7531a0f9-e820-45e9-a42f-ca619ba78074"
      unitRef="usd">-136000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTUtNS0xLTEtNzg2MDg_1e8affee-0a61-406d-a7a1-0032130b7f7f"
      unitRef="usd">8652000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTUtMTUtMS0xLTc4NjA4_10522cc5-501a-40b7-b240-f17d55a0a25a"
      unitRef="usd">8652000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement
      contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMS0xLTEtNzg2MDg_c0667e74-723f-47d9-ba93-6b3407a989d7"
      unitRef="shares">192000</rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMy0xLTEtNzg2MDg_088fcbc0-38ea-45d5-8689-c0c91c03d3f9"
      unitRef="usd">-2000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctNS0xLTEtNzg2MDg_6724b18c-8ea4-48d5-b2e0-3edd1ca6d442"
      unitRef="usd">2000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement
      contextRef="i1225272475884cc6bc34be3f6a6e3a4f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMTEtMS0xLTc4NjA4_6d72e8b0-580e-42f5-b00e-f207f112ab6e"
      unitRef="shares">79000</rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="i1225272475884cc6bc34be3f6a6e3a4f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMTMtMS0xLTc4NjA4_455e5460-5222-4647-95eb-969e18e0ea02"
      unitRef="usd">6497000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTctMTUtMS0xLTc4NjA4_23e17bef-00bd-41b6-9239-66fb800d4501"
      unitRef="usd">6497000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <us-gaap:StockIssuedDuringPeriodSharesOther
      contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTgtMS0xLTEtNzg2MDg_54ef885a-9661-4aa6-b813-d75c8253e571"
      unitRef="shares">3000</us-gaap:StockIssuedDuringPeriodSharesOther>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ia4d379cf082945db9cd4058d035603e1_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTktMS0xLTEtNzg2MDg_50018e81-5dad-4490-bc27-6ea858e22e0f"
      unitRef="shares">36000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="iecf13b2ce8dc478c9e3173b152cd7c35_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTktNS0xLTEtNzg2MDg_774dd584-e1cf-4fb6-bccf-ea93a7f7f876"
      unitRef="usd">1021000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMTktMTUtMS0xLTc4NjA4_01528564-b8e8-447f-8906-8e34199347f7"
      unitRef="usd">1021000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:SharesIssued
      contextRef="i1191b15085d24a4090a0e6cf7f8a8754_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMS0xLTEtNzg2MDg_da6b9b02-9893-4d83-a92a-a47d16c8dcc1"
      unitRef="shares">33799000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i1191b15085d24a4090a0e6cf7f8a8754_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMy0xLTEtNzg2MDg_56aba72a-f7d4-4d34-9df4-e548919a8a08"
      unitRef="usd">338000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if4c54cc99046494ba560c270ccbc3879_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtNS0xLTEtNzg2MDg_199be890-98a3-4125-bcce-9c4989bbdeea"
      unitRef="usd">314541000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9e70b63e924649afa96b3f3565e42b26_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtNy0xLTEtNzg2MDg_64e47817-c296-4237-82e7-b390399f61aa"
      unitRef="usd">545572000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i83385c33271c449185e1f48b7c32fcc0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtOS0xLTEtNzg2MDg_1729c656-5c4c-4711-ac22-5e05c304f108"
      unitRef="usd">187000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="i3d2b4833bc724d81af84c2be116ddc36_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMTEtMS0xLTc4NjA4_9a82e4cb-9220-451a-b08c-a945ea51f6bb"
      unitRef="shares">1107000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i3d2b4833bc724d81af84c2be116ddc36_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMTMtMS0xLTc4NjA4_56642311-d044-4e04-a305-4b228b94d19a"
      unitRef="usd">-35380000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjAtMTUtMS0xLTc4NjA4_cefc1adf-fcc1-4112-bab6-9c1d3ea79113"
      unitRef="usd">825258000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjEtNy0xLTEtNzg2MDg_200bead6-e53b-4ab6-946e-d81d9246a0b6"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i60c7ad643ee24947a0507767fd7af229_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjEtNy0xLTEtNzg2MDg_b93e06df-b4c2-4030-b2cf-7e35d020f837"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjEtMTUtMS0xLTc4NjA4_69fe30a2-f792-47e3-80a0-fd88300adc07"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ie361ac8943624af59a34da5baada933f_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjItOS0xLTEtNzg2MDg_e8f92ffd-660f-434b-aacd-899cc76c99d7"
      unitRef="usd">-5022000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjItMTUtMS0xLTc4NjA4_bfc13213-d3e4-4ede-b2dd-ac14ecbffb0f"
      unitRef="usd">-5022000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo3MWIxZDhiMzUzZjk0YmUzOGFiZGIyNzZmZjk5NGZhNF83MA_09438386-7251-4533-a6cb-492561c59098"
      unitRef="usd">449000</us-gaap:OtherComprehensiveIncomeLossTax>
    <rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo3MWIxZDhiMzUzZjk0YmUzOGFiZGIyNzZmZjk5NGZhNF83MA_95104e0b-6155-4a40-ba9c-83db25a87cdf"
      unitRef="usd">449000</rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ie361ac8943624af59a34da5baada933f_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtOS0xLTEtNzg2MDg_e03aad41-69a8-44d8-8cbf-53e82cd6769d"
      unitRef="usd">-1403000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjMtMTUtMS0xLTc4NjA4_87048133-cc10-4564-9b3d-16316d70243b"
      unitRef="usd">-1403000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i42f7d8305bf74256aa08ab7219dcd4af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjQtNS0xLTEtNzg2MDg_ceead469-8fec-48df-a4cc-b119a83fa29f"
      unitRef="usd">8334000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjQtMTUtMS0xLTc4NjA4_474cd426-c810-4e4f-b9cd-e21856068034"
      unitRef="usd">8334000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement
      contextRef="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMS0xLTEtNzg2MDg_570d591f-76db-4acc-b272-44f579d2002d"
      unitRef="shares">245000</rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMy0xLTEtNzg2MDg_1f23b696-c7b2-4b0c-bf4b-d4498603ca2c"
      unitRef="usd">-2000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="i42f7d8305bf74256aa08ab7219dcd4af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtNS0xLTEtNzg2MDg_af439fc3-5b1b-41bc-b676-fb2973f76102"
      unitRef="usd">2000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement
      contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMTEtMS0xLTc4NjA4_f6145241-3793-47f4-9447-29a98e93e59d"
      unitRef="shares">95000</rock:StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMTMtMS0xLTc4NjA4_00772ec6-d111-41a5-bb71-54dd2690d45b"
      unitRef="usd">4404000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjYtMTUtMS0xLTc4NjA4_8f61f402-d501-46a2-a7e6-1e86bfa35185"
      unitRef="usd">4404000</rock:StockIssuedDuringPeriodValueRestrictedStockAwardSettlement>
    <us-gaap:StockIssuedDuringPeriodSharesOther
      contextRef="i73dfa60b788b480a920a8634c504e0a5_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjctMS0xLTEtNzg2MDg_faab3217-f838-4c61-b9f1-f0a53c9751f0"
      unitRef="shares">16000</us-gaap:StockIssuedDuringPeriodSharesOther>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjgtMTEtMS0xLTc4NjA4_1b7db378-8470-4b03-a843-e4b3d9322c52"
      unitRef="shares">-1997000</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="i7c075c4f7c1f4d1d8f236f7c52303845_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjgtMTMtMS0xLTc4NjA4_1d26c5a6-be4c-445a-8d75-cf88cd68209e"
      unitRef="usd">85876000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjgtMTUtMS0xLTc4NjA4_7c87931b-35ca-4ecb-9f6b-1e016b3407f0"
      unitRef="usd">85876000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:SharesIssued
      contextRef="icf0b08651dde4f8d94a7bde9dbce6a9a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMS0xLTEtNzg2MDg_a2155f72-bbee-4553-a9df-c7cabc2bd369"
      unitRef="shares">34060000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="icf0b08651dde4f8d94a7bde9dbce6a9a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMy0xLTEtNzg2MDg_d5109f81-affd-4163-b19f-234349c3f5a2"
      unitRef="usd">340000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i976e866e5d78415f82e96b8a1a8f8bba_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktNS0xLTEtNzg2MDg_70ec3541-8db5-4899-8b48-f4126702677c"
      unitRef="usd">322873000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia8189174c2d4405383f05c32cc8c5f9d_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktNy0xLTEtNzg2MDg_e19a3b18-ecd1-4c11-8fb0-65e74fe29fc0"
      unitRef="usd">627978000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iac9cad15749148fb8d6bcd2f6790d617_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktOS0xLTEtNzg2MDg_e432b1be-5618-44dc-93c5-91684d6f11c5"
      unitRef="usd">-3432000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="if033831b782e49ff955d964e0bb5299b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMTEtMS0xLTc4NjA4_b1359a95-3702-46bb-8d59-8130d2203a97"
      unitRef="shares">3199000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="if033831b782e49ff955d964e0bb5299b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMTMtMS0xLTc4NjA4_801b01da-d994-4e08-bca4-3021e76e0cc1"
      unitRef="usd">-125660000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84Mi9mcmFnOjZhMjRiNzM5NmExYjRiNzNiMWNjOGYwOTdhMjE5NzgyL3RhYmxlOjRjMmJhODcyNjJkZDRjMjFhODU4OWY3NjE5NjdmOWFiL3RhYmxlcmFuZ2U6NGMyYmE4NzI2MmRkNGMyMWE4NTg5Zjc2MTk2N2Y5YWJfMjktMTUtMS0xLTc4NjA4_54c34213-1685-4578-8ba5-923e59af9a93"
      unitRef="usd">822099000</us-gaap:StockholdersEquity>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNzM_5e382d16-80bd-461a-9ce6-fca32b18a3f9">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Principles of consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The consolidated financial statements include the accounts of Gibraltar Industries, Inc. and subsidiaries (the "Company"). All intercompany accounts and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Use of estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of the consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the amounts reported in the consolidated financial statements and accompanying notes. Actual results could differ from those estimates due to uncertainty in the current economic environment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Segment Reporting&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has four reportable segments: Renewables, Residential, Agtech and Infrastructure. In 2021, the Company's former Renewable Energy and Conservation segment was divided into two segments, Renewables and Agtech. For further disclosure regarding the Company's reportable segments, refer to Note 20 "Segment Information."&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Revenue recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue is recognized when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration the Company expects to be entitled in exchange for transferring those products or services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied at a point in time and significant judgments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from contracts with customers is recognized when the Company transfers control of the promised product at a point in time, which is determined when the customer has legal title and the significant risks and rewards of ownership of the asset, and the Company has a present right to payment for the product.  The Company allocates the transaction price, which is generally the quoted price per terms of the contract and the consideration the Company expects to receive, to each performance obligation.  These products are generally sold with rights of return and these contracts may provide other credits or incentives, which are accounted for as variable consideration.  Sales returns, allowances, and customer incentives, including rebates, are treated as reductions to the sales transaction price and based largely on an assessment of all information (i.e., historical, current and forecasted) that is reasonably available to the Company, and estimated at contract inception and updated at the end of each reporting period as additional information becomes available.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied over time and significant judgments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For a contract to construct an asset that the customer controls as it is being created or enhanced, or a promise to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment, the Company recognizes revenue over time.  For the contracts to construct a certain asset, the Company determines that the customer controls the asset while it is being constructed.  For the contracts for products that have no alternative use and for which the Company has an enforceable right to payment, the Company identifies these products as products that are not a standard inventory item or the Company cannot readily direct the product to another customer for use without incurring a significant economic loss, or significant costs to rework the product.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company determines the transaction price for each contract based on the consideration the Company expects to receive for the promised products and services under the entire contract, which is generally the stated contract price based on an expected cost plus a margin.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the above contracts with customers with respect to which the Company satisfies a performance obligation over time, the Company recognizes revenue based on the extent of progress towards completion of the performance obligation using the cost-to-cost measure of progress.  Under the cost-to-cost measure of progress, the extent of progress toward completion is measured based on the ratio of costs incurred to date to the total estimated costs at completion of the performance obligation.  Revenues are recognized proportionally as costs are incurred.  Costs to fulfill a contract include all direct costs related to contract performance.  Selling and administrative expenses are &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;charged to operations as incurred.  Provision for loss on an uncompleted performance obligation is recognized in the period in which such loss is determined.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company regularly reviews the progress under the cost-to-cost method and any adjustments are recognized as necessary.  Changes in estimates are recognized as they become known using the cumulative catch-up basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also recognizes revenues from services contracts over time.  The Company recognizes revenue over time during the term of the agreement as the customer is simultaneously receiving and consuming the benefits provided throughout the Company's performance. Therefore, due to control transferring over time, the Company recognizes revenue on a straight-line basis throughout the contract period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Contract assets and contract liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract assets primarily represents revenue recognized for performance obligations that have been satisfied but for which amounts receivable have not been billed.  These are included as current assets and included within accounts receivable on the Company's consolidated balance sheets.  Contract liabilities include payments received from customers in advance of the satisfaction of performance obligations for a contract.  The Company does not consider contract advances to be significant financing components as the intent of these payments in advance are for reasons other than providing a significant financing benefit and are customary in the Company's industry.  Unearned revenue relates to payments received in advance of performance under the contract and is recognized when the Company performs under the contract. Unearned revenue is presented within accrued expenses in the Company's consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Costs to obtain a contract with a customer&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes an asset for the incremental costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year.  If the amortization period of the asset is one year or less, the Company recognizes the incremental costs of obtaining a contract as an expense when incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All highly liquid investments with a maturity of three months or less are considered cash equivalents.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounts receivable and allowance for doubtful accounts and contract assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable are composed of trade and contract receivables recorded at either the invoiced amount or costs in excess of billings, are expected to be collected within one year, and do not bear interest.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s expected loss allowance methodology for accounts receivable and costs in excess of billings (collectively "accounts receivable") is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' accounts receivables.  The Company is exposed to credit losses through sales of products and services.  Due to the short-term nature of such accounts receivable, the estimated amount of accounts receivable that may not be collected is based on aging of the accounts receivable balances.  Additionally, specific allowance amounts are established to record the appropriate provision for customers that no longer share risk characteristics similar with other accounts receivable. The Company&#x2019;s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions.  Balances are written off when determined to be u&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ncollectible &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;after all means of collection have been exhausted and the potential for recovery is considered remote.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimates are used to determine the allowance. These estimates are based on assessment of anticipated payment and all other historical, current and future information that is reasonably available.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes activity recorded within the allowance for doubtful accounts and contract assets balances for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.454%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,951&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Adoption of ASU 2016-13, cumulative-effect adjustment to retained earnings at January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;385&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Bad debt expense, net of recoveries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts written off against allowance and other adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(689)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,128)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Ending balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,746&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Concentrations of credit risk in accounts receivable are limited to those from significant customers that are believed to be financially sound. As of December&#160;31, 2022 and 2021, the Company's most significant customer is a home improvement retailer. The&lt;/span&gt;&lt;span style="color:#291bff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;home improvement retailer purchases from the Residential segment.  Accounts receivable as a percentage of consolidated accounts receivable from the home improvement retailer was 14% as of December&#160;31, 2022 and 2021.  Net sales to the home improvement retailer as a percentage of consolidated net sales were 14%, 13%, and 14%  during the years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Inventories&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories are valued at the lower of cost, determined using the first-in, first-out method, or net realizable value. Shipping and handling costs are recognized as a component of cost of sales.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property, plant, and equipment are stated at cost and depreciated over their estimated useful lives using the straight-line method. Interest is capitalized in connection with construction of qualified assets. Expenditures that exceed an established dollar threshold and that extend the useful lives of assets are capitalized, while repair and maintenance costs are expensed as incurred. The estimated useful lives of land improvements, buildings, and building improvements are 15 to 40 years, while the estimated useful lives for machinery and equipment are 3 to 20 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below sets forth the depreciation expense recognized during the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Acquisition related assets and liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounting for the acquisition of a business as a purchase transaction requires an allocation of the purchase price to the assets acquired and the liabilities assumed in the transaction at their respective estimated fair values. The most complex estimations of individual fair values are those involving long-lived assets, such as property, plant, and equipment and intangible assets. The Company uses all available information to make these fair value determinations and engages independent valuation specialists to assist in the fair value determination of the acquired long-lived assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Goodwill and other intangible assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company tests goodwill for impairment at the reporting unit level on an annual basis at October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of a reporting unit could be below its carrying value. The reporting units are at the component level, or one level below the operating segment level. Goodwill is assigned to each reporting unit as of the date the reporting unit is acquired.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company may elect to perform a qualitative assessment that considers economic, industry and company-specific factors for some or all of the Company's selected reporting units. If, after completing the assessment, it is determined that it is more likely than not that the fair value of a reporting unit is less than its carrying value, the Company proceeds to a quantitative test. The Company may also elect to perform a quantitative test instead of a qualitative test for any or all of the Company's reporting units.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The quantitative impairment test consists of comparing the fair value of a reporting unit, determined using two valuation techniques, to its carrying value. If the carrying value of the reporting unit exceeds its fair value, goodwill is &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;considered impaired, and a loss measured by the excess of the carrying value of the reporting unit over the fair value of the reporting unit must be recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also tests its indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of an indefinite-lived intangible asset could be below its carrying value. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, determined using discounted cash flows on a relief-from-royalty basis, with its carrying amount.  An impairment loss would be recognized for the carrying amount in excess of its fair value.  Acquired identifiable intangible assets are recorded at cost. Identifiable intangible assets with finite useful lives are amortized over their estimated useful lives. For additional disclosure of the Company's goodwill and other intangible assets refer to Note 7 "Goodwill and Related Intangible Assets."&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Impairment of long-lived assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-lived assets, including acquired identifiable intangible assets with finite useful lives, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of those assets may not be recoverable.  In specific situations, when the Company has selected individual assets to be sold or scrapped, the Company obtains market value data for those specific assets and measures and records the impairment loss based on such data. Otherwise, the Company uses undiscounted cash flows to determine whether impairment exists and measures any impairment loss by approximating fair value using acceptable valuation techniques, including discounted cash flow models and third-party appraisals. For additional disclosure on impairment of the Company's long-lived assets refer to Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments."&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company determines if an agreement is, or contains, a lease at the inception of the agreement. At lease commencement, the Company recognizes a right-of-use asset and a lease liability for leases with terms greater than twelve months.  The initial lease liability is recognized at the present value of remaining lease payments over the lease term.  Leases with an initial term of twelve months or less are not recorded on the Company's consolidated balance sheets.  The Company recognizes lease expense for operating leases on a straight-line basis over the lease term.  The Company combines lease and non-lease components, such as common area maintenance costs, in calculating the related asset and lease liabilities for all underlying asset groups.  Operating lease cost is included in income from operations and includes short-term leases and variable lease costs which are immaterial.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Deferred charges&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred charges associated with initial costs incurred to enter into new debt arrangements are included as a component of long-term debt and are amortized as a part of interest expense over the terms of the associated debt agreements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Advertising&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company expenses advertising and marketing costs as incurred. For the years ended December&#160;31, 2022, 2021 and 2020, advertising and marketing costs were $10.9 million, $8.0 million, and $7.2 million, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Foreign currency transactions and translation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The assets and liabilities of the Company&#x2019;s foreign subsidiaries are translated into U.S. dollars at the rate of exchange in effect at the balance sheet date. Income and expense items are translated at the average exchange rates prevailing during the period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Income taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes is determined using the asset and liability approach. Under this approach, deferred income taxes represent the expected future tax consequences of temporary differences between the carrying amounts and tax basis of assets and liabilities. The Company records a valuation allowance to reduce deferred tax assets when uncertainty exists regarding their realization.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Equity-based compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company measures the cost of equity-based compensation based on grant date fair value and recognizes the cost over the period in which the employee is required to provide service in exchange for the award reduced by forfeitures. Equity-based compensation consists of grants of stock options, deferred stock units, common stock, restricted stock units, and performance stock units. Equity-based compensation expense is included as a component of selling, general, and administrative expenses.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recent accounting pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considers the applicability and impact of ASUs, and ASUs effective in or after 2022, respectively, were assessed and determined to be either not applicable, or had or are expected to have minimal impact on the Company's consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5OTQ_45e77824-2447-48e3-9eb6-8f51409de8f7">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Principles of consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The consolidated financial statements include the accounts of Gibraltar Industries, Inc. and subsidiaries (the "Company"). All intercompany accounts and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5OTk_30b3a382-20b3-435a-b156-6c1f2da90b7f">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Use of estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of the consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the amounts reported in the consolidated financial statements and accompanying notes. Actual results could differ from those estimates due to uncertainty in the current economic environment.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjM_7c000a9f-c2ae-42d8-abc7-2d25f85bfd76">Segment ReportingThe Company has four reportable segments: Renewables, Residential, Agtech and Infrastructure. In 2021, the Company's former Renewable Energy and Conservation segment was divided into two segments, Renewables and Agtech.</us-gaap:SegmentReportingPolicyPolicyTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfNzQx_a302cace-e7b9-4cf3-aaa4-e97231c339f6"
      unitRef="segment">4</us-gaap:NumberOfReportableSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="i27908b60c3e84604a696a0da2c41f62e_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTA2_9002d11d-8d66-4444-a637-2389eeed4b13"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNTQ_e1a00784-d6c4-40c9-b6b8-74586e42d9af">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Revenue recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue is recognized when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration the Company expects to be entitled in exchange for transferring those products or services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied at a point in time and significant judgments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from contracts with customers is recognized when the Company transfers control of the promised product at a point in time, which is determined when the customer has legal title and the significant risks and rewards of ownership of the asset, and the Company has a present right to payment for the product.  The Company allocates the transaction price, which is generally the quoted price per terms of the contract and the consideration the Company expects to receive, to each performance obligation.  These products are generally sold with rights of return and these contracts may provide other credits or incentives, which are accounted for as variable consideration.  Sales returns, allowances, and customer incentives, including rebates, are treated as reductions to the sales transaction price and based largely on an assessment of all information (i.e., historical, current and forecasted) that is reasonably available to the Company, and estimated at contract inception and updated at the end of each reporting period as additional information becomes available.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied over time and significant judgments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For a contract to construct an asset that the customer controls as it is being created or enhanced, or a promise to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment, the Company recognizes revenue over time.  For the contracts to construct a certain asset, the Company determines that the customer controls the asset while it is being constructed.  For the contracts for products that have no alternative use and for which the Company has an enforceable right to payment, the Company identifies these products as products that are not a standard inventory item or the Company cannot readily direct the product to another customer for use without incurring a significant economic loss, or significant costs to rework the product.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company determines the transaction price for each contract based on the consideration the Company expects to receive for the promised products and services under the entire contract, which is generally the stated contract price based on an expected cost plus a margin.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the above contracts with customers with respect to which the Company satisfies a performance obligation over time, the Company recognizes revenue based on the extent of progress towards completion of the performance obligation using the cost-to-cost measure of progress.  Under the cost-to-cost measure of progress, the extent of progress toward completion is measured based on the ratio of costs incurred to date to the total estimated costs at completion of the performance obligation.  Revenues are recognized proportionally as costs are incurred.  Costs to fulfill a contract include all direct costs related to contract performance.  Selling and administrative expenses are &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;charged to operations as incurred.  Provision for loss on an uncompleted performance obligation is recognized in the period in which such loss is determined.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company regularly reviews the progress under the cost-to-cost method and any adjustments are recognized as necessary.  Changes in estimates are recognized as they become known using the cumulative catch-up basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also recognizes revenues from services contracts over time.  The Company recognizes revenue over time during the term of the agreement as the customer is simultaneously receiving and consuming the benefits provided throughout the Company's performance. Therefore, due to control transferring over time, the Company recognizes revenue on a straight-line basis throughout the contract period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Contract assets and contract liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract assets primarily represents revenue recognized for performance obligations that have been satisfied but for which amounts receivable have not been billed.  These are included as current assets and included within accounts receivable on the Company's consolidated balance sheets.  Contract liabilities include payments received from customers in advance of the satisfaction of performance obligations for a contract.  The Company does not consider contract advances to be significant financing components as the intent of these payments in advance are for reasons other than providing a significant financing benefit and are customary in the Company's industry.  Unearned revenue relates to payments received in advance of performance under the contract and is recognized when the Company performs under the contract. Unearned revenue is presented within accrued expenses in the Company's consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Costs to obtain a contract with a customer&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes an asset for the incremental costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year.  If the amortization period of the asset is one year or less, the Company recognizes the incremental costs of obtaining a contract as an expense when incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMzk_8c832f3d-66c9-4118-aa39-e146afbb15c0">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All highly liquid investments with a maturity of three months or less are considered cash equivalents.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNjY_3e7755c6-6437-4c43-8221-ae2160aabac4">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounts receivable and allowance for doubtful accounts and contract assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable are composed of trade and contract receivables recorded at either the invoiced amount or costs in excess of billings, are expected to be collected within one year, and do not bear interest.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s expected loss allowance methodology for accounts receivable and costs in excess of billings (collectively "accounts receivable") is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' accounts receivables.  The Company is exposed to credit losses through sales of products and services.  Due to the short-term nature of such accounts receivable, the estimated amount of accounts receivable that may not be collected is based on aging of the accounts receivable balances.  Additionally, specific allowance amounts are established to record the appropriate provision for customers that no longer share risk characteristics similar with other accounts receivable. The Company&#x2019;s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions.  Balances are written off when determined to be u&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ncollectible &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;after all means of collection have been exhausted and the potential for recovery is considered remote.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimates are used to determine the allowance. These estimates are based on assessment of anticipated payment and all other historical, current and future information that is reasonably available.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes activity recorded within the allowance for doubtful accounts and contract assets balances for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.454%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,951&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Adoption of ASU 2016-13, cumulative-effect adjustment to retained earnings at January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;385&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Bad debt expense, net of recoveries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts written off against allowance and other adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(689)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,128)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Ending balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,746&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Concentrations of credit risk in accounts receivable are limited to those from significant customers that are believed to be financially sound. As of December&#160;31, 2022 and 2021, the Company's most significant customer is a home improvement retailer. The&lt;/span&gt;&lt;span style="color:#291bff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;home improvement retailer purchases from the Residential segment.</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMDA_6fbabcc4-7a43-4841-8e2d-4226f4d7308a">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes activity recorded within the allowance for doubtful accounts and contract assets balances for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.454%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,951&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Adoption of ASU 2016-13, cumulative-effect adjustment to retained earnings at January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;385&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Bad debt expense, net of recoveries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts written off against allowance and other adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(689)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,128)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Ending balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,746&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMS0xLTEtMS03ODYwOA_2f872d36-80d8-44e5-bd67-e0c48ea71770"
      unitRef="usd">3738000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMS0zLTEtMS03ODYwOA_7e2d2842-7a1b-4c35-881b-c91e1d5d16d4"
      unitRef="usd">3529000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMS01LTEtMS03ODYwOA_632a6f33-507c-4101-890f-7c28becfb1e9"
      unitRef="usd">5951000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="idbe6a8124fc44a00a6467aef510ebbfd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMi0xLTEtMS03ODYwOA_1489ab3c-b957-4d89-b019-6587f45a7faa"
      unitRef="usd">0</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ie54da7396361489495cbe337cf00b779_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMi0zLTEtMS03ODYwOA_6c933886-b627-48b9-a0ca-c6bbf8537c70"
      unitRef="usd">0</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ic54cbd171db94113b88cdb36b6ee6d76_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMi01LTEtMS03ODYwOA_dd4459bc-8bcb-479b-ad00-20d466323a02"
      unitRef="usd">385000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMy0xLTEtMS03ODYwOA_f8cf5918-09d8-42db-a76f-f99d7644da97"
      unitRef="usd">1221000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMy0zLTEtMS03ODYwOA_2125e04e-6693-418f-8231-d54e496c35d9"
      unitRef="usd">898000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfMy01LTEtMS03ODYwOA_fcecdf73-60cc-4d05-a9ce-5cf25d60d493"
      unitRef="usd">1321000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNC0xLTEtMS03ODYwOA_56975d15-4b0e-40bb-a746-740926d5619f"
      unitRef="usd">1213000</us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs>
    <us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNC0zLTEtMS03ODYwOA_cb1fd7c5-f36f-4393-be39-d608e43c9055"
      unitRef="usd">689000</us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs>
    <us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNC01LTEtMS03ODYwOA_65f43a63-53c0-40f6-900c-f2e4061bf259"
      unitRef="usd">4128000</us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNS0xLTEtMS03ODYwOA_b5cb4350-0326-4d48-bc55-14eeac03c084"
      unitRef="usd">3746000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNS0zLTEtMS03ODYwOA_f8e6f7cf-7f7e-4210-a9bb-317ceb601af3"
      unitRef="usd">3738000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOmZlMWQyMDg5YjEyODRiM2ZhYWZhMzYxYzM1MzRhNGI2L3RhYmxlcmFuZ2U6ZmUxZDIwODliMTI4NGIzZmFhZmEzNjFjMzUzNGE0YjZfNS01LTEtMS03ODYwOA_34628815-432f-4e9c-8c3b-07cebe86b379"
      unitRef="usd">3529000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i1ea1ab49276343edb9a5e6c56f0e61e8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfODkzNw_e44f5438-3bbc-46c7-ae70-ad9614710906"
      unitRef="number">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i98e1c3b3185f4ddcbe64b5c44936ee08_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTA3OQ_4c4421a0-564b-46bc-9872-e7e669693f18"
      unitRef="number">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i95ff1080bfe94f89a11b0c8c5f16d8b6_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMzI5ODUzNDkwMjAwMw_d006f0a6-18b5-41cd-8a46-2b50e61230cf"
      unitRef="number">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="icf48193410cf43ef90a3483df0c17674_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMzI5ODUzNDkwMjA1Mg_22150a56-9576-4ac8-90d8-02ad614cb1ec"
      unitRef="number">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNTA_08c4c193-bfb5-446b-9d79-3d9f1c331584">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Inventories&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories are valued at the lower of cost, determined using the first-in, first-out method, or net realizable value. Shipping and handling costs are recognized as a component of cost of sales.&lt;/span&gt;&lt;/div&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNzQ_f721999e-b2c9-499e-8b83-d3a534312338">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property, plant, and equipment are stated at cost and depreciated over their estimated useful lives using the straight-line method. Interest is capitalized in connection with construction of qualified assets. Expenditures that exceed an established dollar threshold and that extend the useful lives of assets are capitalized, while repair and maintenance costs are expensed as incurred. The estimated useful lives of land improvements, buildings, and building improvements are 15 to 40 years, while the estimated useful lives for machinery and equipment are 3 to 20 years.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i189fd663bed442f5bd1e0f0305c11730_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTg4Nw_07ff9323-6836-42cd-bd97-07a2148f25be">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="if7710fe2fac7428aa8d7508ca7dc9997_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTg5Mw_4179835c-3e87-4c4e-95df-3f73d29e01d2">P40Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ib56947beeb194a5a908e873e0702d475_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTk2OA_70a881b7-d7c7-4b6b-801b-98ea2031ae2e">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ied8c39d5f0ff4f1e977a523a36165cba_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfOTk3NA_7bf9ffea-ab67-4c21-b196-7ff450c9addc">P20Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMDQ_da5bca11-79c0-4c2f-b5d5-63edc124e8e8">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below sets forth the depreciation expense recognized during the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of property, plant, and equipment at December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land and land improvements&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,704&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Building and improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;194,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Construction in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment, gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;285,028&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;261,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(175,444)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(164,583)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:Depreciation
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOjUxNDFjZjUxY2ExZjQxMDY5ODU5MmFiMzg0ZTZhMzk1L3RhYmxlcmFuZ2U6NTE0MWNmNTFjYTFmNDEwNjk4NTkyYWIzODRlNmEzOTVfMS0xLTEtMS03ODYwOA_89699173-d895-4946-be66-af0c1ce3d3ef"
      unitRef="usd">14583000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOjUxNDFjZjUxY2ExZjQxMDY5ODU5MmFiMzg0ZTZhMzk1L3RhYmxlcmFuZ2U6NTE0MWNmNTFjYTFmNDEwNjk4NTkyYWIzODRlNmEzOTVfMS0zLTEtMS03ODYwOA_0eb08d06-3a03-4b79-acda-32a855255958"
      unitRef="usd">13110000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RhYmxlOjUxNDFjZjUxY2ExZjQxMDY5ODU5MmFiMzg0ZTZhMzk1L3RhYmxlcmFuZ2U6NTE0MWNmNTFjYTFmNDEwNjk4NTkyYWIzODRlNmEzOTVfMS01LTEtMS03ODYwOA_8cc9b179-720d-40b9-93de-8a0bb5945e35"
      unitRef="usd">11252000</us-gaap:Depreciation>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5ODM_73f0abdc-90b0-46aa-89fa-48dbab4e82ce">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Acquisition related assets and liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounting for the acquisition of a business as a purchase transaction requires an allocation of the purchase price to the assets acquired and the liabilities assumed in the transaction at their respective estimated fair values. The most complex estimations of individual fair values are those involving long-lived assets, such as property, plant, and equipment and intangible assets. The Company uses all available information to make these fair value determinations and engages independent valuation specialists to assist in the fair value determination of the acquired long-lived assets.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjA_7b689d55-191a-40d7-87ca-1581958175e9">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Goodwill and other intangible assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company tests goodwill for impairment at the reporting unit level on an annual basis at October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of a reporting unit could be below its carrying value. The reporting units are at the component level, or one level below the operating segment level. Goodwill is assigned to each reporting unit as of the date the reporting unit is acquired.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company may elect to perform a qualitative assessment that considers economic, industry and company-specific factors for some or all of the Company's selected reporting units. If, after completing the assessment, it is determined that it is more likely than not that the fair value of a reporting unit is less than its carrying value, the Company proceeds to a quantitative test. The Company may also elect to perform a quantitative test instead of a qualitative test for any or all of the Company's reporting units.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The quantitative impairment test consists of comparing the fair value of a reporting unit, determined using two valuation techniques, to its carrying value. If the carrying value of the reporting unit exceeds its fair value, goodwill is &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;considered impaired, and a loss measured by the excess of the carrying value of the reporting unit over the fair value of the reporting unit must be recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also tests its indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31, or more frequently if an event occurs, or circumstances change, that indicate that the fair value of an indefinite-lived intangible asset could be below its carrying value. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, determined using discounted cash flows on a relief-from-royalty basis, with its carrying amount.  An impairment loss would be recognized for the carrying amount in excess of its fair value.  Acquired identifiable intangible assets are recorded at cost. Identifiable intangible assets with finite useful lives are amortized over their estimated useful lives. For additional disclosure of the Company's goodwill and other intangible assets refer to Note 7 "Goodwill and Related Intangible Assets."&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjc_cfbec221-98dc-46dd-a148-43ca220239d0">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Impairment of long-lived assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-lived assets, including acquired identifiable intangible assets with finite useful lives, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of those assets may not be recoverable.  In specific situations, when the Company has selected individual assets to be sold or scrapped, the Company obtains market value data for those specific assets and measures and records the impairment loss based on such data. Otherwise, the Company uses undiscounted cash flows to determine whether impairment exists and measures any impairment loss by approximating fair value using acceptable valuation techniques, including discounted cash flow models and third-party appraisals. For additional disclosure on impairment of the Company's long-lived assets refer to Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments."&lt;/span&gt;&lt;/div&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwNTY_a3dd0da2-d167-4d6b-9807-2088abbfaeea">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company determines if an agreement is, or contains, a lease at the inception of the agreement. At lease commencement, the Company recognizes a right-of-use asset and a lease liability for leases with terms greater than twelve months.  The initial lease liability is recognized at the present value of remaining lease payments over the lease term.  Leases with an initial term of twelve months or less are not recorded on the Company's consolidated balance sheets.  The Company recognizes lease expense for operating leases on a straight-line basis over the lease term.  The Company combines lease and non-lease components, such as common area maintenance costs, in calculating the related asset and lease liabilities for all underlying asset groups.  Operating lease cost is included in income from operations and includes short-term leases and variable lease costs which are immaterial.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:DeferredChargesPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMjg_82ca2c6a-af33-4649-9f1c-9137b89dcc59">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Deferred charges&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred charges associated with initial costs incurred to enter into new debt arrangements are included as a component of long-term debt and are amortized as a part of interest expense over the terms of the associated debt agreements.&lt;/span&gt;&lt;/div&gt;</us-gaap:DeferredChargesPolicyTextBlock>
    <us-gaap:AdvertisingCostsPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5NzU_159f1167-eb29-4997-9fae-ffb63c90fe85">AdvertisingThe Company expenses advertising and marketing costs as incurred.</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTUzMDk_a43e54be-49d0-4e1c-8efc-0215e3f98615"
      unitRef="usd">10900000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTUzMjE_73cf26be-5212-43bc-8d0d-1fa1ad9502fa"
      unitRef="usd">8000000.0</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTUzMzc_b81b28c4-3d5b-4e3d-a92d-9bfe23019dfa"
      unitRef="usd">7200000</us-gaap:AdvertisingExpense>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwODI_31fefc4a-a87a-4632-b528-926fd58813b2">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Foreign currency transactions and translation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The assets and liabilities of the Company&#x2019;s foreign subsidiaries are translated into U.S. dollars at the rate of exchange in effect at the balance sheet date. Income and expense items are translated at the average exchange rates prevailing during the period.&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTY5ODA_7c17155f-20d6-4e36-82b2-ae7c36c74454">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Income taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes is determined using the asset and liability approach. Under this approach, deferred income taxes represent the expected future tax consequences of temporary differences between the carrying amounts and tax basis of assets and liabilities. The Company records a valuation allowance to reduce deferred tax assets when uncertainty exists regarding their realization.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwOTA_24689fbc-22e6-46d7-9919-35827725c05c">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Equity-based compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company measures the cost of equity-based compensation based on grant date fair value and recognizes the cost over the period in which the employee is required to provide service in exchange for the award reduced by forfeitures. Equity-based compensation consists of grants of stock options, deferred stock units, common stock, restricted stock units, and performance stock units. Equity-based compensation expense is included as a component of selling, general, and administrative expenses.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl84OC9mcmFnOjRiZjQzYTM1YWZlZDQ4MTA5MWViODc5ZDFkYjA3MmYwL3RleHRyZWdpb246NGJmNDNhMzVhZmVkNDgxMDkxZWI4NzlkMWRiMDcyZjBfMTcwMzQ_c300e6b8-051c-4f02-99ca-8784b929a801">Recent accounting pronouncements</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RleHRyZWdpb246YjgwMjVlYWEyYzUyNDBlODliMTkyMWU3NTFhYTE5MjFfMjA1_760a542c-8acf-4275-b12d-c92ce11131d9">ACCOUNTS RECEIVABLE, NET&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable at December 31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.938%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.014%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.015%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trade accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;185,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs in excess of billings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total accounts receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;220,902&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240,182&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less allowance for doubtful accounts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,746)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,738)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;217,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;236,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Refer to Note 3 "Revenue" concerning the Company's costs in excess of billings.&lt;/span&gt;&lt;/div&gt;</us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RleHRyZWdpb246YjgwMjVlYWEyYzUyNDBlODliMTkyMWU3NTFhYTE5MjFfMjAy_059ab67d-c989-4eb6-a389-759cfa736f77">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable at December 31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.938%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.014%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.015%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trade accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;185,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs in excess of billings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total accounts receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;220,902&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240,182&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less allowance for doubtful accounts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,746)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,738)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;217,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;236,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMS0xLTEtMS03ODYwOA_ab852687-845d-49e7-a07c-2604397dc065"
      unitRef="usd">179170000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMS0zLTEtMS03ODYwOA_d022c6e3-13d8-4a12-80a7-0029577e0174"
      unitRef="usd">185745000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMi0xLTEtMS03ODYwOA_38cd0639-aa78-4303-8f0d-5418677369ba"
      unitRef="usd">41732000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:UnbilledContractsReceivable
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMi0xLTEtMS03ODYwOA_e0edf989-2ba2-4c6d-9633-e34c8a53b98f"
      unitRef="usd">41732000</us-gaap:UnbilledContractsReceivable>
    <us-gaap:UnbilledContractsReceivable
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMi0zLTEtMS03ODYwOA_45461da6-863b-4b32-becc-c81158518950"
      unitRef="usd">54437000</us-gaap:UnbilledContractsReceivable>
    <rock:ContractsReceivableGrossCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMy0xLTEtMS03ODYwOA_05c7e8cf-c9bb-4d65-b690-96049745652d"
      unitRef="usd">220902000</rock:ContractsReceivableGrossCurrent>
    <rock:ContractsReceivableGrossCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfMy0zLTEtMS03ODYwOA_7c6213c8-135b-4b43-a749-daf0ab46eb7f"
      unitRef="usd">240182000</rock:ContractsReceivableGrossCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNC0xLTEtMS03ODYwOA_357bea2d-4ef4-4d6e-8c50-716234222f51"
      unitRef="usd">3746000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNC0zLTEtMS03ODYwOA_45b0f400-bceb-4bb5-9470-3cbc96387887"
      unitRef="usd">3738000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNS0xLTEtMS03ODYwOA_ecfc7207-0052-4230-9ade-ec3ac8288f66"
      unitRef="usd">217156000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85MS9mcmFnOmI4MDI1ZWFhMmM1MjQwZTg5YjE5MjFlNzUxYWExOTIxL3RhYmxlOmMwZTVkYjM1MmJiMTQ2NDlhN2UyNjI0MjEyMDI5ZjUxL3RhYmxlcmFuZ2U6YzBlNWRiMzUyYmIxNDY0OWE3ZTI2MjQyMTIwMjlmNTFfNS0zLTEtMS03ODYwOA_cd759f3f-1ad0-461c-aecd-70cae486f8c3"
      unitRef="usd">236444000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjg4MA_371f5c7d-482d-48c7-ad16-711f5c146ce9">REVENUE&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Sales includes revenue from contracts with customers for designing, engineering, manufacturing and installation of solar racking systems; electrical balance of systems; roof and foundation ventilation products; centralized mail systems and electronic package solutions; retractable awnings; gutter guards; rain dispersion products; trims and flashings and other accessories; designing, engineering, manufacturing and installation of greenhouses; structural bearings; expansion joints; pavement sealant; elastomeric concrete; and bridge cable protection systems.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Refer to Note 20 "Segment Information" for additional information related to revenue recognized by timing of transfer of control by reportable segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Payment terms and conditions vary by contract, although terms generally include a requirement of payment within a range from 30 to 60 days, or in certain cases, up front deposits.  In circumstances where the timing of revenue recognition differs from the timing of invoicing, the Company has determined that the Company's contracts generally do not include a significant financing component. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from sales.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 2022, the Company's remaining performance obligations are part of contracts that have an original expected duration of one year or less.  Additionally, as of December 31, 2022 and 2021, there were no assets recognized related to incremental costs of obtaining a contract with a customer as the benefits of these costs are not expected to exceed one year.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract assets consist of costs in excess of billings presented within accounts receivable in the Company's consolidated balance sheets. Contract liabilities consist of billings in excess of cost, classified as current liabilities, and unearned revenue, presented within accrued expenses, in the Company's consolidated balance sheets.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the ending and beginning balances of costs in excess of billings, billings in excess of cost and unearned revenue, respectively, as of December 31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.176%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.318%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.318%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.320%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs in excess of billings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Billings in excess of cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(35,017)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(46,711)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(34,702)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unearned revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,572)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,681)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(21,325)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue recognized during the years ended December 31, 2022, 2021, and 2020 that was in contract liabilities at the beginning of the respective periods was $44.4&#160;million, $53.0&#160;million, and $57.8&#160;million, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The decreases in costs in excess of billings and billings in excess of cost as of December 31, 2022 compared to December 31, 2021, respectively, were primarily due to decline in volume in the Renewables and Agtech segments in 2022 compared to 2021. The increase in costs in excess of billings as of December 31, 2021 compared to December 31, 2020 was primarily due to the timing of the Company's right to invoice customers for performance satisfied by the Company for significant contracts in the Renewables and Agtech segments near the end of 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <rock:ContractWithCustomerContractPaymentTerms
      contextRef="ie9f0cf89203446ea80e9bc2562a71d2b_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfODkx_07a39c48-77e6-4cbc-8b37-ede5094ddce5">P30D</rock:ContractWithCustomerContractPaymentTerms>
    <rock:ContractWithCustomerContractPaymentTerms
      contextRef="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfODk3_8850a042-7ddf-419d-896f-21102d2b8fb6">P60D</rock:ContractWithCustomerContractPaymentTerms>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="id42b3ba54fe5400f99720a70c62e6a75_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTQxMA_71c24dd9-a65b-4b0c-ad2b-e3761d4f0395">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTQ4Mg_8b18a4ea-a7ee-4c67-b9de-31212ce411ac"
      unitRef="usd">0</rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract>
    <rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTQ4Mg_faa4cbef-b126-4f01-8342-f3b8e155eb52"
      unitRef="usd">0</rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="id42b3ba54fe5400f99720a70c62e6a75_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMTYzMA_6cabb79d-f0b1-4162-a5f9-5474d35175d9">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjg4Mg_88734953-0c9c-46c8-b225-e70ba1ef891f">&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.176%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.318%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.318%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.320%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs in excess of billings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Billings in excess of cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(35,017)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(46,711)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(34,702)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unearned revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,572)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,681)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(21,325)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS0xLTEtMS03ODYwOA_38cd0639-aa78-4303-8f0d-5418677369ba"
      unitRef="usd">41732000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:UnbilledContractsReceivable
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS0xLTEtMS03ODYwOA_e0edf989-2ba2-4c6d-9633-e34c8a53b98f"
      unitRef="usd">41732000</us-gaap:UnbilledContractsReceivable>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS0zLTEtMS03ODYwOA_36a77e0f-f7fb-496c-a2b6-32b299256481"
      unitRef="usd">54437000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMS01LTEtMS03ODYwOA_d9f78179-2183-4d95-9ee4-574f36900f4a"
      unitRef="usd">26915000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i841c4b7ae582485d83be490f499f4416_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMi0xLTEtMS03ODYwOA_5fa5df20-ce61-4cc1-8e7b-e9ad615edb4c"
      unitRef="usd">35017000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="iafa9f88ca1a5425a9d9a2a3ab68bc2f5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMi0zLTEtMS03ODYwOA_b65bd7ca-5687-4d6b-8d43-1bbd08228f86"
      unitRef="usd">46711000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i3a2270fdbe18406a99dc5af36308726a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMi01LTEtMS03ODYwOA_3e7c53db-d116-42cd-a342-ba41a8b97b33"
      unitRef="usd">34702000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMy0xLTEtMS03ODYwOA_845f90d8-e42e-4912-8957-8152b5ce7eb7"
      unitRef="usd">4572000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMy0zLTEtMS03ODYwOA_a28f8a00-e83c-4be6-a2fb-3b035cf0fe15"
      unitRef="usd">3681000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RhYmxlOjhiZDg2YWY2NTE4ZDRlYTI4MmJjMGQzYjVlYjU3MDlkL3RhYmxlcmFuZ2U6OGJkODZhZjY1MThkNGVhMjgyYmMwZDNiNWViNTcwOWRfMy01LTEtMS03ODYwOA_731e91d7-1721-4536-864c-4b542583d96c"
      unitRef="usd">21325000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerAssetReclassifiedToReceivable
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMzI5ODUzNDg4ODI3MA_6dd0621a-d7e9-4ea1-9184-b1b354c8535d"
      unitRef="usd">44400000</us-gaap:ContractWithCustomerAssetReclassifiedToReceivable>
    <us-gaap:ContractWithCustomerAssetReclassifiedToReceivable
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjMyNA_da2ab97a-b4a9-40f8-ae9c-36ee04bfff01"
      unitRef="usd">53000000</us-gaap:ContractWithCustomerAssetReclassifiedToReceivable>
    <us-gaap:ContractWithCustomerAssetReclassifiedToReceivable
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85NC9mcmFnOmVkNzAzOTIwYjY1ZTQ4Njc4OTA2Mjg2ZjAxN2JlNmUyL3RleHRyZWdpb246ZWQ3MDM5MjBiNjVlNDg2Nzg5MDYyODZmMDE3YmU2ZTJfMjMyOA_13a61c76-5621-45e4-bb8e-57aa19e07249"
      unitRef="usd">57800000</us-gaap:ContractWithCustomerAssetReclassifiedToReceivable>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RleHRyZWdpb246ODg4N2NiZjJjMmE2NDQ3NGJiNjU3ZTg5ZjUwYmI2ZjBfOTAx_76e4ccf8-95aa-41a8-a5b7-2b33f6e8a63a">INVENTORIES&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories at December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw material&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135,558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Work-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,944&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;176,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;180,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,294)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,465)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total inventories&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;170,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;176,207&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's gross inventory balances are reduced by reserves for excess, obsolete and slow moving inventory and estimates for determining net realizable value of the inventory that are reported on a net basis on the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Company's consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes activity recorded within the reserve for excess, obsolete and slow moving inventory for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Excess, obsolete and slow moving inventory expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,582&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;355&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Scrapped inventory and other adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Ending balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RleHRyZWdpb246ODg4N2NiZjJjMmE2NDQ3NGJiNjU3ZTg5ZjUwYmI2ZjBfODk3_47639960-193b-48aa-830f-ef88d6bf5d0d">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories at December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw material&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135,558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Work-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,944&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;176,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;180,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,294)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,465)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total inventories&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;170,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;176,207&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterials
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMS0xLTEtMS03ODYwOA_c417beca-a35d-4f58-b4e3-92d3feef2035"
      unitRef="usd">111187000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMS0zLTEtMS03ODYwOA_2a5232c2-5e75-46ef-a048-4588affcfaa3"
      unitRef="usd">135558000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryWorkInProcess
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMi0xLTEtMS03ODYwOA_74090182-dde9-4d07-927a-de002bc1c17c"
      unitRef="usd">17944000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMi0zLTEtMS03ODYwOA_642c410f-b4bd-4ecc-80e3-d62fbcb55d43"
      unitRef="usd">5858000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryFinishedGoods
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMy0xLTEtMS03ODYwOA_d60c2b7a-80c1-422a-a7c4-aef580283e06"
      unitRef="usd">47523000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfMy0zLTEtMS03ODYwOA_01c26064-a5cb-4639-991c-b42d1bee0272"
      unitRef="usd">39256000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryGross
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNC0xLTEtMS03ODYwOA_e718b86b-5de6-4461-afcc-6e10edb1db51"
      unitRef="usd">176654000</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNC0zLTEtMS03ODYwOA_6ead7651-7203-43f6-a7f7-77f3c4c67723"
      unitRef="usd">180672000</us-gaap:InventoryGross>
    <us-gaap:InventoryAdjustments
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNS0xLTEtMS03ODYwOA_6faed80e-7ac6-49d3-b6b5-8c3bbc12a7b6"
      unitRef="usd">6294000</us-gaap:InventoryAdjustments>
    <us-gaap:InventoryAdjustments
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNS0zLTEtMS03ODYwOA_4ed2437f-4028-4d59-aba6-4b3bc72f2ba4"
      unitRef="usd">4465000</us-gaap:InventoryAdjustments>
    <us-gaap:InventoryNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNi0xLTEtMS03ODYwOA_c3fe8cda-a06e-4d85-8a78-ee19189448ed"
      unitRef="usd">170360000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjRmMDU0OTMzODRhZTQzNjg4N2Q1OWU3ZDAwZmQ2ZjViL3RhYmxlcmFuZ2U6NGYwNTQ5MzM4NGFlNDM2ODg3ZDU5ZTdkMDBmZDZmNWJfNi0zLTEtMS03ODYwOA_07af5c01-6b2c-4842-8a11-7654c8b49b12"
      unitRef="usd">176207000</us-gaap:InventoryNet>
    <rock:SummaryOfSlowMovingInventoryActivityTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RleHRyZWdpb246ODg4N2NiZjJjMmE2NDQ3NGJiNjU3ZTg5ZjUwYmI2ZjBfODkw_f0137900-d0e5-4cb9-97c5-276dfe512cf9">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes activity recorded within the reserve for excess, obsolete and slow moving inventory for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Excess, obsolete and slow moving inventory expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,582&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;355&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Scrapped inventory and other adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Ending balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:SummaryOfSlowMovingInventoryActivityTableTextBlock>
    <us-gaap:InventoryValuationReserves
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMS0xLTEtMS03ODYwOA_b5cb963d-6bdf-4871-893d-eebddc54f437"
      unitRef="usd">4400000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMS0zLTEtMS03ODYwOA_bb0cb91b-f2aa-400a-bc28-d2e7ed0ee363"
      unitRef="usd">4161000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMS01LTEtMS03ODYwOA_f40ffcb1-43b4-445d-bf58-f7b7bb0f8b94"
      unitRef="usd">3463000</us-gaap:InventoryValuationReserves>
    <rock:InventoryValuationExcessObsoleteAndSlowMovingInventory
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMi0xLTEtMS03ODYwOA_289c5312-e838-4c84-b36a-424ff59c3870"
      unitRef="usd">1582000</rock:InventoryValuationExcessObsoleteAndSlowMovingInventory>
    <rock:InventoryValuationExcessObsoleteAndSlowMovingInventory
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMi0zLTEtMS03ODYwOA_40b599a1-bdde-496d-b7c9-3e1e59744c31"
      unitRef="usd">215000</rock:InventoryValuationExcessObsoleteAndSlowMovingInventory>
    <rock:InventoryValuationExcessObsoleteAndSlowMovingInventory
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMi01LTEtMS03ODYwOA_a8f1fdc0-77fd-4bdb-b992-3570d7b88f80"
      unitRef="usd">355000</rock:InventoryValuationExcessObsoleteAndSlowMovingInventory>
    <rock:InventoryValuationScrappedInventoryAndOtherAdjustments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMy0xLTEtMS03ODYwOA_666657a3-2def-4600-b660-4e7c951d218c"
      unitRef="usd">197000</rock:InventoryValuationScrappedInventoryAndOtherAdjustments>
    <rock:InventoryValuationScrappedInventoryAndOtherAdjustments
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMy0zLTEtMS03ODYwOA_f8009f65-423d-4719-86d6-8d9fa83ed205"
      unitRef="usd">24000</rock:InventoryValuationScrappedInventoryAndOtherAdjustments>
    <rock:InventoryValuationScrappedInventoryAndOtherAdjustments
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfMy01LTEtMS03ODYwOA_6e92b8e5-ec2f-42b1-b585-5a0444755031"
      unitRef="usd">343000</rock:InventoryValuationScrappedInventoryAndOtherAdjustments>
    <us-gaap:InventoryValuationReserves
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfNC0xLTEtMS03ODYwOA_9beeecf8-fe96-4aef-88a8-3cd2035fa2c9"
      unitRef="usd">6179000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfNC0zLTEtMS03ODYwOA_a6546464-5d03-4d1d-9c22-9a2c32f3b471"
      unitRef="usd">4400000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl85Ny9mcmFnOjg4ODdjYmYyYzJhNjQ0NzRiYjY1N2U4OWY1MGJiNmYwL3RhYmxlOjM1YzFhZDBkMDY3ZjQzMDdhMDQ4NTNiNTc2YzAxNzQ4L3RhYmxlcmFuZ2U6MzVjMWFkMGQwNjdmNDMwN2EwNDg1M2I1NzZjMDE3NDhfNC01LTEtMS03ODYwOA_1a1b902b-ed3f-419f-a039-ff8839ba9609"
      unitRef="usd">4161000</us-gaap:InventoryValuationReserves>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90ZXh0cmVnaW9uOmQ1ZmE1MGEwYmI4NjQzNzQ5ZmIyMGE2NzM1Zjk3OGYxXzE1MQ_6f6057de-70be-4e1c-bcea-b1f6b41f0990">PROPERTY, PLANT, AND EQUIPMENT&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of property, plant, and equipment at December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land and land improvements&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,704&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Building and improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;194,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Construction in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment, gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;285,028&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;261,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(175,444)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(164,583)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:LandAndLandImprovements
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzEtMS0xLTEtNzg2MDg_3de5620c-be64-4cf4-97d0-dc2758e4e7a9"
      unitRef="usd">4704000</us-gaap:LandAndLandImprovements>
    <us-gaap:LandAndLandImprovements
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzEtMy0xLTEtNzg2MDg_ac3c0159-6bf4-4ce7-a2a9-6a7d03295109"
      unitRef="usd">4634000</us-gaap:LandAndLandImprovements>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzItMS0xLTEtNzg2MDg_b385f597-da37-4789-a1fe-97975d17111f"
      unitRef="usd">43416000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzItMy0xLTEtNzg2MDg_69335003-0b44-4a0d-92e8-8e09e8b556d9"
      unitRef="usd">42526000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzMtMS0xLTEtNzg2MDg_8b8d4d26-e0ab-416c-a90f-411dda556a3c"
      unitRef="usd">223843000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzMtMy0xLTEtNzg2MDg_08a9befc-8aa3-4d42-9154-958f00456d55"
      unitRef="usd">194015000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzQtMS0xLTEtNzg2MDg_b9ab93c4-9c2e-43c8-9d20-448588c0110d"
      unitRef="usd">13065000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzQtMy0xLTEtNzg2MDg_a91f4b0e-8232-46b8-b6c4-b296cf0bede4"
      unitRef="usd">20293000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzUtMS0xLTEtNzg2MDg_97e9694d-23c3-4da6-ac04-c236d07e180b"
      unitRef="usd">285028000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzUtMy0xLTEtNzg2MDg_fb4eaa63-1824-4d6d-9b18-b8e7abbde5b9"
      unitRef="usd">261468000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzYtMS0xLTEtNzg2MDg_89f4844a-75ec-4c0a-8475-9b94f13510d7"
      unitRef="usd">175444000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzYtMy0xLTEtNzg2MDg_d86d83f8-b93b-4f15-9f8b-d8d4a3efe476"
      unitRef="usd">164583000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzctMS0xLTEtNzg2MDg_c9936547-8de6-47f2-94e4-f06ca44d1229"
      unitRef="usd">109584000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDAvZnJhZzpkNWZhNTBhMGJiODY0Mzc0OWZiMjBhNjczNWY5NzhmMS90YWJsZTpmNzU3ZjBmMjBjN2I0MzMwYWNmN2U5ZGE5ZWQzNjMxZi90YWJsZXJhbmdlOmY3NTdmMGYyMGM3YjQzMzBhY2Y3ZTlkYTllZDM2MzFmXzctMy0xLTEtNzg2MDg_7317108c-603d-4182-9add-74fe1c03a775"
      unitRef="usd">96885000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzgxMDM_dae56b02-7370-4f37-aa1a-0959bb8eb34d">ACQUISITIONS&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;2022 Acquisitions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On August 22, 2022, the Company purchased all the issued and outstanding membership interests of Quality Aluminum Products ("QAP"), a manufacturer of aluminum and steel products including soffit, fascia, trim coil, rain carrying products and aluminum siding. The results of QAP have been included in the Company's consolidated financial results since the date of acquisition within the Company's Residential segment.  The preliminary purchase consideration for the acquisition of QAP was $52.1&#160;million, which includes a preliminary working capital adjustment and certain other adjustments provided for in the membership interest purchase agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The purchase price for the acquisition was preliminarily allocated to the assets acquired and liabilities assumed based upon their respective fair values estimated as of the date of acquisition.  The Company has commenced the process to confirm the existence, condition, and completeness of the assets acquired and liabilities assumed to establish fair value of such assets and liabilities and to determine the amount of goodwill to be recognized as of the date of acquisition.  Due to the timing of the acquisition, the Company continues to gather information supporting the acquired assets and assumed liabilities.  Accordingly, all amounts recorded are provisional.  These provisional amounts are subject to change if new information is obtained concerning facts and circumstances that existed as of the acquisition date that, if known, would have affected the measurement of the amounts recognized as of that date.  The final determination of the fair value of certain assets and liabilities will be completed within a measurement period of up to one year from the date of acquisition.  The final values may also result in changes to depreciation and amortization expense related to certain assets such as property, plant, and equipment and acquired intangible assets.  The preliminary excess consideration was recorded as goodwill and approximated $3.6&#160;million, all of which is deductible for tax purposes.  Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the domestic building products markets.  The final purchase price allocation will be completed no later than the third quarter of fiscal year 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preliminary allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.789%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Working capital&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,295)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,085&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets acquired in this acquisition consisted of the following as of the date of acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.218%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average Amortization Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;2020 Acquisitions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2020, the Company acquired five businesses in separate transactions, described further below, two of which are included within the Company's Renewables segment, two in the Company's Agtech segment, and one in the Company's Residential segment.  The purchase consideration for each acquisition was allocated to the assets acquired and liabilities assumed based upon their respective fair values.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On December 31, 2020, the Company purchased all the outstanding membership interests of TerraSmart LLC and TerraTrak LLC (collectively, "TerraSmart"), a leading provider of screw-based, ground-mount solar racking technology, particularly used for solar projects installed on challenging terrain. The results of TerraSmart have been included in the Company's consolidated financial results since the date of acquisition within the Company's Renewables segment. The purchase consideration for the acquisition of TerraSmart was $223.9&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the equity purchase agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The purchase price for the TerraSmart acquisition was allocated to the assets acquired and liabilities assumed based upon their respective fair values estimated as of the date of acquisition.  The Company has completed the process to confirm the existence, condition and completeness of assets acquired and liabilities assumed to establish fair values of the assets acquired and liabilities assumed to determine the amount of goodwill to be recognized as of the date of acquisition.  The final determination of the fair value of certain assets and liabilities was completed within a measurement period of up to one year from the date of acquisition.  The excess consideration was recorded as goodwill and approximated $141.0&#160;million, all of which is deductible for tax purposes. Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the domestic solar energy market.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The allocation of the TerraSmart purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:78.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.813%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Working capital&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,854&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,640)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets acquired in the TerraSmart acquisition consisted of the following as of the date of acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.397%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average Amortization Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less than 1 year&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On December 11, 2020, the Company purchased all the outstanding stock of Sunfig Corporation ("Sunfig"), a provider of software solutions that optimize solar energy investments through upstream design, performance and financial modeling, for a purchase consideration of $3.8&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the stock purchase agreement.  The results of Sunfig have been included in the Company's consolidated financial results since the date of acquisition within the Company's Renewables segment.  The excess consideration was recorded as goodwill and approximated $3.5&#160;million, all of which is deductible for tax purposes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 15, 2020, the Company purchased substantially all of the assets of Architectural Mailboxes LLC ("Architectural Mailboxes"), a complementary addition to Gibraltar's existing mail and package solutions business within the Residential segment, for a purchase consideration of $26.9&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the asset purchase agreement. The results of Architectural Mailboxes have been included in the Company's consolidated financial results since the date of acquisition within the Company's Residential segment.  The excess consideration was recorded as goodwill and approximated $7.4&#160;million, all of which is deductible for tax purposes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 13, 2020, the Company purchased substantially all of the assets of Delta Separations, LLC, a California limited liability company, and Teaching Tech, LLC, a California limited liability company (collectively, "Delta Separations") for a purchase consideration of $47.1&#160;million, which includes a working capital adjustment and certain other adjustments provided for in the asset purchase agreement.  Delta Separations was a privately-held engineering company primarily engaged in the assembly and sale of centrifugal ethanol-based extraction systems. The results of Delta Separations have been included in the Company's consolidated financial results since the date of acquisition within the Company's Agtech segment.  The excess consideration was recorded as goodwill and approximated $32.2&#160;million, all of which is deductible for tax purposes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On January 15, 2020, the Company purchased substantially all of the assets of Thermo Energy Systems Inc. ("Thermo"), a Canadian-based, privately held provider of commercial greenhouse solutions in North America providing growing infrastructure for the plant based organic food market, for a purchase consideration of $7.3&#160;million.  The results of Thermo have been included in the Company's consolidated financial results since the date of acquisition within the Company's Agtech segment.  The excess consideration recorded as goodwill approximated $19.1&#160;million, all of which is deductible for tax purposes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo is as follows as of the respective date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.362%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Working capital&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15,377)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,576)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill represents future economic benefits arising from other assets acquired that could not be individually identified including workforce additions, growth opportunities, and increased presence in the respective markets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets acquired in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo consisted of the following as of the respective date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.387%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average Amortization Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5 - 15 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11 - 13 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less than 1 year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The acquisition of QAP was financed primarily through borrowings under the Company's revolving credit facility. The acquisition of TerraSmart was financed through a combination of cash on hand and borrowings under the Company's revolving credit facility. The acquisitions of Sunfig, Architectural Mailboxes, Delta Separations, and Thermo were funded from cash on hand.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized costs as a component of cost of sales related to the sale of inventory at fair value as a result of allocating the purchase price of recent acquisitions. The Company also incurred certain acquisition-related costs composed of legal and consulting fees.  These costs were recognized as a component of selling, general, and administrative expenses in the consolidated statements of operations. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The acquisition-related costs consisted of the following for the years ended December 31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.445%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.562%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.562%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.565%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;545&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;949&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total acquisition related costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,972&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;949&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,864&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="ibd14b74b67ad4900b366da7049fabf98_D20220822-20220822"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzU0OTc1NTgyNDQ2Mg_abb3e605-fad1-4b20-a093-04082b621530"
      unitRef="usd">52100000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:Goodwill
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzU0OTc1NTgyNDQ5MA_47874af4-5bc4-4aee-8333-e30bd989b0cd"
      unitRef="usd">3600000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzIxOTkwMjMyNjk4NzI_a1b07612-47b1-4fda-a9e0-1584c74de9e0">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preliminary allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.789%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Working capital&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,295)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,085&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The allocation of the TerraSmart purchase consideration to the estimated fair value of the assets acquired and liabilities assumed is as follows as of the date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:78.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.813%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Working capital&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,854&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,640)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The allocation of the purchase consideration to the estimated fair value of the assets acquired and liabilities assumed in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo is as follows as of the respective date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.362%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Working capital&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15,377)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,576)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzAtMS0xLTEtODU3Nzg_fbec2959-8fde-448d-9dbe-6dac08ad4352"
      unitRef="usd">1018000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzEtMS0xLTEtODU3Nzg_4f6b17f1-bb61-4f8f-835b-70046c88afd5"
      unitRef="usd">23759000</rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzItMS0xLTEtODU3Nzg_69ad9b8f-20b2-4559-8df4-757fd830cf81"
      unitRef="usd">8486000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzMtMS0xLTEtODU3Nzg_cfedf5b5-ec38-4f36-a5c4-f8eef28f0429"
      unitRef="usd">14700000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzQtMS0xLTEtODU3Nzg_f4b0e42b-5c50-4484-a045-277b01fb081d"
      unitRef="usd">1813000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="ia53930dbdf4d433a9a1ee073b78ecc87_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzUtMS0xLTEtODU3Nzg_4d905294-b3a1-40aa-9fda-4c7c897306fa"
      unitRef="usd">1295000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:Goodwill
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzYtMS0xLTEtODU3Nzg_800831ae-a256-45bf-a9c1-4c97d57e75bb"
      unitRef="usd">3604000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="ia26bb7d828b149e89a0de2fd955f82b8_I20220822"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo2NzdhZDY2ZmRhODk0ODhiYTY2YTcyYTdjNDlmY2RmZS90YWJsZXJhbmdlOjY3N2FkNjZmZGE4OTQ4OGJhNjZhNzJhN2M0OWZjZGZlXzctMS0xLTEtODU3Nzg_39a39453-bd86-42e5-84ed-478f8c77556e"
      unitRef="usd">52085000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzIxOTkwMjMyNjk4NzM_7104810d-80b9-41d9-b037-4a23537af00e">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets acquired in this acquisition consisted of the following as of the date of acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.218%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average Amortization Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets acquired in the TerraSmart acquisition consisted of the following as of the date of acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.397%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average Amortization Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less than 1 year&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets acquired in the acquisitions of Sunfig, Architectural Mailboxes, Delta Separations and Thermo consisted of the following as of the respective date of the acquisition (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.387%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average Amortization Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5 - 15 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11 - 13 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less than 1 year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock>
    <us-gaap:IndefinitelivedIntangibleAssetsAcquired
      contextRef="ie420fd6d67ea4026ac76cd01f8ae887e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzEtMS0xLTEtODU3Nzg_092fc2eb-0cb3-42c8-99f2-41fa4f87e367"
      unitRef="usd">2800000</us-gaap:IndefinitelivedIntangibleAssetsAcquired>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i950fb400edd84bc0b1053d0f045f4bd2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzQtMS0xLTEtODU3Nzg_b9cdd141-b9b7-4f3c-b849-29a85139886e"
      unitRef="usd">11900000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i950fb400edd84bc0b1053d0f045f4bd2_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzQtMy0xLTEtODU3Nzg_27953b33-c762-453a-9abf-924b2f16be43">P12Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i23c6169a4f084952b8b81fb79a422cb7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTpjNGUxZTYzNDgwYTA0NDVlOGNlZGI3ZTYzOTE3OWFkZi90YWJsZXJhbmdlOmM0ZTFlNjM0ODBhMDQ0NWU4Y2VkYjdlNjM5MTc5YWRmXzUtMS0xLTEtODU3Nzg_e6199490-8262-4d9d-ad1c-9d872e80eb44"
      unitRef="usd">14700000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzEwNQ_b5cc5c60-f080-409a-bd66-7804a671fef1"
      unitRef="business">5</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzE3MA_06e2caca-4e7d-4367-97e9-559dd368b245"
      unitRef="business">2</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzIzNg_1ec7c656-c79c-4819-b9ee-3c8a05afae12"
      unitRef="business">2</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzI2Ng_5c76f2d0-2b08-431c-a36e-afafb9ff9f81"
      unitRef="business">1</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="iba42d8c107304be29ecfaed639e54bf3_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5Xzk3NA_9cd31faa-2406-41c6-880e-2e35ca868daa"
      unitRef="usd">223900000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:Goodwill
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzE4MTg_86362da0-e083-4024-bc05-7154376cc040"
      unitRef="usd">141000000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzAtMS0xLTEtNzg2MDg_7696ef48-0eae-431b-bbd1-1a7d1ceeac7d"
      unitRef="usd">1491000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzEtMS0xLTEtNzg2MDg_dc6425dd-c675-4776-9c70-4a728dbc8982"
      unitRef="usd">5569000</rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzItMS0xLTEtNzg2MDg_504eeed7-3647-4f7d-b1d9-9ade086f6239"
      unitRef="usd">11446000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzMtMS0xLTEtNzg2MDg_0ed95c72-b2c2-429c-88eb-94807593b100"
      unitRef="usd">64150000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzQtMS0xLTEtNzg2MDg_d010004e-b289-407f-84ce-05d0accdc92b"
      unitRef="usd">1854000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzUtMS0xLTEtNzg2MDg_8d413a4b-ec26-49e8-a436-b2acf89e5c6d"
      unitRef="usd">1640000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:Goodwill
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzYtMS0xLTEtNzg2MDg_58a5e33f-9016-480d-8bcf-619eba5dad3b"
      unitRef="usd">140997000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="i2bc68fc7389d4665936f44afe1c58d53_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo1ZjBkNGQ2MWRhNTM0NGNkOGNlNDExZThhNzQ5ZjkzNi90YWJsZXJhbmdlOjVmMGQ0ZDYxZGE1MzQ0Y2Q4Y2U0MTFlOGE3NDlmOTM2XzctMS0xLTEtNzg2MDg_b7b89199-6e18-4d0f-b601-31947206f60c"
      unitRef="usd">223867000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:IndefinitelivedIntangibleAssetsAcquired
      contextRef="i3e16b98023f248ff90c852fdcd7a2623_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzEtMS0xLTEtNzg2MDg_32fbcdca-e039-4cec-bce4-6c349508ed0b"
      unitRef="usd">20830000</us-gaap:IndefinitelivedIntangibleAssetsAcquired>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i61cb50863b25452db870ee255e5a8c82_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzMtMS0xLTEtNzg2MDg_594c6748-6e49-4c64-bd67-31096bc69f4a"
      unitRef="usd">1940000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i61cb50863b25452db870ee255e5a8c82_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzMtMy0xLTEtNzg2MDg_dd967e2b-f862-4abb-9b87-282e48a26081">P12Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i8bf47beeeac44a04a5f55b11927aaaf2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzQtMS0xLTEtNzg2MDg_6f353e5b-e003-4e34-864c-a020077f97d9"
      unitRef="usd">35110000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i8bf47beeeac44a04a5f55b11927aaaf2_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzQtMy0xLTEtNzg2MDg_d05ba523-c6a6-444e-8604-c96af72a88e7">P12Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="if7639d49bdfc4003941beb06441de5c6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzYtMS0xLTEtNzg2MDg_0cbd55fe-a22a-46e6-93a8-ca11a4162f32"
      unitRef="usd">6270000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="iba42d8c107304be29ecfaed639e54bf3_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTphZDgyYjMyYjBhNzE0OTBhOTEzMDE1ZGM1ZTMyM2M4Zi90YWJsZXJhbmdlOmFkODJiMzJiMGE3MTQ5MGE5MTMwMTVkYzVlMzIzYzhmXzctMS0xLTEtNzg2MDg_e621c54f-1412-42ee-8982-59e936639a14"
      unitRef="usd">64150000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i8f277843f5534746b24281c4ee2014d5_D20201211-20201211"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzI2ODI_9921c092-ae9e-418e-b017-82655fbe59c4"
      unitRef="usd">3800000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:Goodwill
      contextRef="i5e6f452b4a1b4e6a8b184d4c8f80496e_I20201211"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzMwMzU_2897c634-5c11-4f7e-bfac-a581f6cbff03"
      unitRef="usd">3500000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="idb4bde9ae5a348e78d63923d447340b3_D20201015-20201015"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzMzNzE_8c8077d5-9625-4ccc-abc1-c2827c36cd10"
      unitRef="usd">26900000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:Goodwill
      contextRef="i9e9f7895818b484da5882e080d8e2452_I20201015"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzM3NDE_f8f5a1c3-e425-4319-b150-50957126b3a3"
      unitRef="usd">7400000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i0ef75e3c221f4f338c1bf51f38ce9576_D20200213-20200213"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzQwNjg_528db329-0f50-4608-938d-ab2c9780e338"
      unitRef="usd">47100000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:Goodwill
      contextRef="i902a884f64974d83822f51709064c20a_I20200213"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzQ1Nzk_9e713e3c-8245-4ad3-b678-d27f35f2c59b"
      unitRef="usd">32200000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="if86ca76cd65c4006b3692afadc0b02ae_D20200115-20200115"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzQ5NDc_be718c58-f822-481f-aadb-d1fea79107b3"
      unitRef="usd">7300000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:Goodwill
      contextRef="i439e4e6ea5524e078df5e17c1e2b6d4f_I20200115"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzUxNjg_02a1e765-c2ad-4bc4-999c-eb696e0c23db"
      unitRef="usd">19100000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzAtMS0xLTEtNzg2MDg_2300cbc8-b26f-4ea2-97e2-0742e940c867"
      unitRef="usd">179000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzEtMS0xLTEtNzg2MDg_34856def-62e9-4a44-9645-9c6d90863baa"
      unitRef="usd">-15377000</rock:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzItMS0xLTEtNzg2MDg_229f78d2-440b-4cf9-afd6-1c05e4f95012"
      unitRef="usd">1740000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzMtMS0xLTEtNzg2MDg_8efad9b8-e7a3-49f0-be25-8bec191f9b79"
      unitRef="usd">38066000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzQtMS0xLTEtNzg2MDg_6f059119-61e6-4b30-b8c1-90c853d3f0ad"
      unitRef="usd">1528000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzUtMS0xLTEtNzg2MDg_82aa9742-6321-4269-8bb6-eebffa6f5e55"
      unitRef="usd">2381000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzYtMS0xLTEtNzg2MDg_eea8c3b0-a16b-4313-b26d-138f573c1bf7"
      unitRef="usd">5576000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:Goodwill
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzctMS0xLTEtNzg2MDg_fac48af9-fa4c-4a19-9645-f0c47ac79af1"
      unitRef="usd">62161000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="i5607f7bd6fc94f0baef1e228b9ab4828_I20200115"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTozNTJlMTZhMDExNmI0NzI5ODUyN2M3OGM4ZWIyZmVjNC90YWJsZXJhbmdlOjM1MmUxNmEwMTE2YjQ3Mjk4NTI3Yzc4YzhlYjJmZWM0XzgtMS0xLTEtNzg2MDg_11485ce1-a253-445d-aa54-efbf4a0413f9"
      unitRef="usd">85102000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:IndefinitelivedIntangibleAssetsAcquired
      contextRef="i5cc82b0990cc4dfb8a6bdd944787604c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzEtMS0xLTEtNzg2MDg_64fdfe09-db94-4394-82ef-6fe333ccf84e"
      unitRef="usd">8100000</us-gaap:IndefinitelivedIntangibleAssetsAcquired>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ifca7e9995091438d9f29db951e63c3e1_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzItMS0xLTEtNzg2MDg_07a8dfc3-bdca-4f9e-8d2a-ee8d89752696"
      unitRef="usd">1177000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ifca7e9995091438d9f29db951e63c3e1_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzItMy0xLTEtNzg2MDg_991f5688-2bd0-4aca-bdf3-7687056788c4">P3Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="id976d25e9da5438eaf01269b17b7cc75_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzMtMS0xLTEtNzg2MDg_cef21088-6992-4ba8-810c-eca6c8edfa60"
      unitRef="usd">8345000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="iee76914c5a3a46ada1936808ffbf5332_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzMtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjplNzY1YmQ5ZTU0MTc0NDRhOTQzMGZiMzFjNjI0MDBlOV80_e7a740ff-7fc6-46e6-a9d8-395b9f8ad1fa">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i2154daa1d9f344679a5d40aaa4d8d1f0_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzMtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjplNzY1YmQ5ZTU0MTc0NDRhOTQzMGZiMzFjNjI0MDBlOV85_8806a6bc-a5e1-4f51-b2c9-939f00a080d0">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i6ae678b7a3cb46f6abea5ea2e6935c0a_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzQtMS0xLTEtNzg2MDg_9f6a4dee-cd95-4e6f-865f-244ac6c3d846"
      unitRef="usd">18480000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="iaf210ed4dc594bd0bd16f946f436a7e7_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzQtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyMTBiYzE0ODJlODA0Y2NkYTEwM2E0ZWQyOTYxNWVkY180_5c264a77-12bd-461d-b781-30ab275b0591">P11Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="iabf1f8f4f96e4c75b1945a4982f727cd_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzQtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjoyMTBiYzE0ODJlODA0Y2NkYTEwM2E0ZWQyOTYxNWVkY185_a3959c12-e9b4-48c5-a1ca-db7e19723a25">P13Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="iffcf9f3e99d24cafbf555fcf67952107_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzUtMS0xLTEtNzg2MDg_9d2bac43-3db9-44dd-af76-b194dd8f9e7b"
      unitRef="usd">1036000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="iffcf9f3e99d24cafbf555fcf67952107_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzUtMy0xLTEtNzg2MDg_99c6bfb5-6ea6-46f0-80a4-df78a5a1d959">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="icb949c48d0124d1db3f745a0ef827873_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzYtMS0xLTEtNzg2MDg_1771af41-616c-476a-a437-806695a737d4"
      unitRef="usd">928000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="icb949c48d0124d1db3f745a0ef827873_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzYtMy0xLTEtNzg2MDgvdGV4dHJlZ2lvbjo0ZTk2Y2IzMmQ4ZDE0ZTJkYjI2NzUwNmJiMTk0MWMzYl8xNA_b296fe8f-0f48-42b1-a8b4-89044d5f9c29">P1Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i62f610b3b97140f2b98e1f2951aa8141_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo3NzM4N2Q2YWI5N2M0MWM3YjQzZTBiODY5NTc5ZjdlNS90YWJsZXJhbmdlOjc3Mzg3ZDZhYjk3YzQxYzdiNDNlMGI4Njk1NzlmN2U1XzctMS0xLTEtNzg2MDg_47662f96-2077-4fce-aa8a-a7e81600e593"
      unitRef="usd">38066000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <rock:ScheduleofBusinessCombinationCostsTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90ZXh0cmVnaW9uOjZhNTM1OGQ4NDc4YjRmODk4YzU2NjJhNDllMDRiZDI5XzgwOTE_a5b51ac1-2a07-40d5-b39c-0aa125cc7470">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The acquisition-related costs consisted of the following for the years ended December 31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.445%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.562%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.562%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.565%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;545&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;949&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total acquisition related costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,972&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;949&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,864&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:ScheduleofBusinessCombinationCostsTableTextBlock>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i5f658b3ed6264fd99f84bf5b525b2ade_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzEtMS0xLTEtNzg2MDg_150fec7e-7354-48b5-b3df-307021420af1"
      unitRef="usd">1427000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i63ddff1a813649999f3234aa74dec939_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzEtMy0xLTEtNzg2MDg_8b1a0675-36cb-4479-99e6-933d1b0d2c58"
      unitRef="usd">0</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="ifcb6399157ce46b3ab6578faaa0799ac_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzEtNS0xLTEtNzg2MDg_14049c12-c854-4319-9a30-d18a91af58a8"
      unitRef="usd">634000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i26e2e96e9b424dc3931dcd7088766572_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzItMS0xLTEtNzg2MDg_b1b0550e-af06-4b3f-95b4-bfedd252d473"
      unitRef="usd">545000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i49718e9a7dff488e96157cf2b01ea7b1_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzItMy0xLTEtNzg2MDg_eb7fd266-3a46-44d4-a133-b0de171cbf10"
      unitRef="usd">949000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i64c401bebe194e8da22bd1d9ee5cb954_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzItNS0xLTEtNzg2MDg_cdab496c-913a-4249-8dbf-4635055394b1"
      unitRef="usd">3230000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzMtMS0xLTEtNzg2MDg_f2ccbae2-5818-4373-8f44-2e2ce933a2ed"
      unitRef="usd">1972000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzMtMy0xLTEtNzg2MDg_c4f62b55-fc63-4855-909e-27620b3d62c5"
      unitRef="usd">949000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDMvZnJhZzo2YTUzNThkODQ3OGI0Zjg5OGM1NjYyYTQ5ZTA0YmQyOS90YWJsZTo4Y2M0OWE2M2JhZTY0NWI2YjNiNWQxNzJlOThkNDkyNi90YWJsZXJhbmdlOjhjYzQ5YTYzYmFlNjQ1YjZiM2I1ZDE3MmU5OGQ0OTI2XzMtNS0xLTEtNzg2MDg_fcf766ee-519f-4fab-91b3-c65eb57410c9"
      unitRef="usd">3864000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1Nzk_2a1191a3-1b61-4570-9699-b434ca03e53e">GOODWILL AND RELATED INTANGIBLE ASSETS&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the carrying amount of goodwill for the years ended December&#160;31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.335%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;514,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Adjustments to prior year acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,433)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,110)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,414)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,227)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;188,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;510,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Adjustment to prior year acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,554)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,533)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;188,030&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;209,056&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;512,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill is recognized net of accumulated impairment losses of $133.2 million as of December&#160;31, 2022 and 2021, respectively.  No goodwill impairment charges were recognized by the Company during 2022 or 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Annual and Interim Impairment Testing&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company tests goodwill and indefinite-lived intangible assets for impairment on an annual basis as of October&#160;31 and at interim dates when indicators of impairment are present. In 2022, 2021 and 2020, no indicators of impairment were identified as of interim dates; therefore, no interim tests were performed.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the October 31, 2022 impairment test, the Company conducted a quantitative analysis for all eight of the Company&#x2019;s reporting units. The quantitative impairment test consists of comparing the fair value of a reporting unit with its carrying value including goodwill. The fair value of each reporting unit evaluated under the quantitative test was determined using two valuation techniques: an income approach and a market approach. Each valuation approach relies on significant assumptions including a weighted average cost of capital ("WACC") based upon the capital structure of market participants in the Company&#x2019;s peer groups, projected revenue growth, forecasted cash flows, and earnings multiples based on the market value of the Company and market participants within its peer groups.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the Company's annual testing for 2022, 2021 and 2020, none of the reporting units with goodwill as of the testing date had carrying values in excess of their fair values.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Acquired Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Acquired intangible assets consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.624%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite-lived intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finite-lived intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unpatented technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,163&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,656&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108,591&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,371&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,006&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;157,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,081&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;212,607&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,081&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company did not recognize impairment charges related to intangible assets during the year ended December 31, 2022. During the year ended December 31, 2021, the Company recognized &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzIxOTkwMjMyNTg1MTI_cc8a4d64-9e7f-4e6b-a81a-9f0b19229b16"&gt;impairment charges&lt;/span&gt; of $8.3&#160;million related to indefinite-lived trademark intangible assets due to a rebranding initiative that resulted in the discontinuation of certain indefinite-lived trademarks in the Company's Agtech segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized amortization expense related to the definite-lived intangible assets. The following table summarizes amortization expense for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.047%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,856&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense related to acquired intangible assets for the next five years ended December&#160;31 is estimated as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.401%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1NzE_608328b2-bd5e-492c-8964-ba090f0e0228">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the carrying amount of goodwill for the years ended December&#160;31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.335%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;514,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Adjustments to prior year acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,433)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,110)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,414)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,227)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;188,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;510,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Adjustment to prior year acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,554)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,533)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;188,030&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;209,056&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;512,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="if71ea0dc0ccb42fe9d884b3b42df66c9_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtMS0xLTEtNzg2MDg_00d5ebe5-b249-44e8-83af-f2c66a407904"
      unitRef="usd">192527000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ia980978b7aaa41c3a7838d24b52993e0_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtMy0xLTEtNzg2MDg_cc1b66bd-e6bc-47b7-af2f-9b7eb0f0fa19"
      unitRef="usd">205452000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i333fd532e777418bb2a4458a54d5087d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtNS0xLTEtNzg2MDg_360188e9-c773-4c4f-a660-cef8d56587ea"
      unitRef="usd">84622000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i4b1b166ea550472199d3c2e4dfbaa397_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtNy0xLTEtNzg2MDg_98597a52-7ee0-4431-9b9c-eb0aa30c8281"
      unitRef="usd">31678000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEtOS0xLTEtNzg2MDg_6e3f7ccc-134b-41b0-8e1e-f492d57cebdc"
      unitRef="usd">514279000</us-gaap:Goodwill>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i440bce1026014d699ffb16eb70be7748_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtMS0xLTEtNzg2MDg_48ea2e6a-4fd9-4d3f-9b71-233fb45a8eab"
      unitRef="usd">2433000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtMy0xLTEtNzg2MDg_cfd5a5e2-e523-40ed-869f-aa13978f6f00"
      unitRef="usd">0</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtNS0xLTEtNzg2MDg_e6581a79-27fc-4003-9337-7bd5aa4302c4"
      unitRef="usd">-323000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtNy0xLTEtNzg2MDg_fbf61364-2028-4866-82ce-5c62e9cdd4d6"
      unitRef="usd">0</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzMtOS0xLTEtNzg2MDg_129b2e57-e29d-4a07-84dd-8f6b47d1a234"
      unitRef="usd">2110000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i440bce1026014d699ffb16eb70be7748_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtMS0xLTEtNzg2MDg_857b88f7-604b-462d-bb65-0ebea0b1b099"
      unitRef="usd">-1414000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtMy0xLTEtNzg2MDg_2923952b-2670-46d1-b8f5-18076419df91"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtNS0xLTEtNzg2MDg_a4569e45-a542-445f-bfca-91dcd303dd32"
      unitRef="usd">187000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtNy0xLTEtNzg2MDg_72b85d6f-f63c-4839-a705-386287b30243"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzUtOS0xLTEtNzg2MDg_40a055c7-6e76-4467-a360-c3160efb7fd7"
      unitRef="usd">-1227000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="i74ebb29fe92148aab89177f0f20edfba_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtMS0xLTEtNzg2MDg_8b8e2725-0289-4f58-aa08-fc08e65528cc"
      unitRef="usd">188680000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i93429e7458594c2e953b224890378183_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtMy0xLTEtNzg2MDg_1855ed72-b824-4973-874e-b62a55e71875"
      unitRef="usd">205452000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i3622765463ad433297deb9d47bcfb46c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtNS0xLTEtNzg2MDg_59c13b79-324c-4330-bf44-e2b3c0eac11a"
      unitRef="usd">85132000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ied0814c367b446958b056acced90712d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtNy0xLTEtNzg2MDg_e38d300c-4631-4ee5-91ea-aef2236769c3"
      unitRef="usd">31678000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzYtOS0xLTEtNzg2MDg_de2d262d-d240-4b7f-abfe-e50ea7a7b97a"
      unitRef="usd">510942000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctMS0xLTEtNzg2MDg_f7c09a0c-78b1-4355-8c81-768cd7d80b95"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctMy0xLTEtODMzODk_2b6505ce-9382-447b-b252-72413ebb4448"
      unitRef="usd">3604000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctNS0xLTEtNzg2MDg_91fc83f8-57c0-4470-9c29-f30d02e44109"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctNy0xLTEtNzg2MDg_6e031ebd-9899-4616-bdb9-1a0e1f3aa40b"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzctOS0xLTEtNzg2MDg_31ce51ab-ba1a-41dc-93d6-a2f472934c2f"
      unitRef="usd">3604000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktMS0xLTEtNzg2MDg_d2e423ce-5337-4755-bec5-d7b8491dcda4"
      unitRef="usd">-904000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktMy0xLTEtNzg2MDg_4ded2beb-90c5-4c73-a44c-e478b99f3a2a"
      unitRef="usd">0</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktNS0xLTEtNzg2MDg_cdb1a61c-04fd-4f63-add2-5590f88f2f4a"
      unitRef="usd">0</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktNy0xLTEtNzg2MDg_863a3f6e-13aa-48c6-841b-8d1b0176f7b2"
      unitRef="usd">0</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzktOS0xLTEtNzg2MDg_a2ceed54-f51d-44fc-bd9f-75df469f3566"
      unitRef="usd">-904000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTEtMS0xLTc4NjA4_3eb627bd-2a25-4d77-9d3c-52dc92c58b3c"
      unitRef="usd">-1554000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTMtMS0xLTc4NjA4_19408495-a5d9-4ae8-9ccf-fb7432006fdd"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTUtMS0xLTc4NjA4_2f107b66-aa47-424a-bf47-ae49f908d7fa"
      unitRef="usd">-1533000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTctMS0xLTc4NjA4_72c00a35-d745-486c-bcc5-3f035ba7dca4"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzEwLTktMS0xLTc4NjA4_4b50c231-1ac2-486d-bc23-85e93d2e1995"
      unitRef="usd">-3087000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="ie13564e143704ba78a69c6f2857d3f71_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTEtMS0xLTc4NjA4_b8134e15-7b6b-4b7e-9088-62a48b0a6d69"
      unitRef="usd">188030000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i3d37137cd4fe440481550ac83f0f08fd_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTMtMS0xLTc4NjA4_2ac222dc-85e8-4834-b39b-422f95c6375a"
      unitRef="usd">209056000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i36572c7ac0e74bb28ca7bb656743aecf_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTUtMS0xLTc4NjA4_e6ec75dd-d163-4bae-a6c5-52499702618f"
      unitRef="usd">83599000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id0f0d39e2c1a4fa6a83683917981fe44_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTctMS0xLTc4NjA4_3ea07ead-0b67-430c-b478-268823f839ab"
      unitRef="usd">31678000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo0ZjJlYmQxNGYyNWM0YzMxYWYyMzA2MTBhMzEzZTQzMy90YWJsZXJhbmdlOjRmMmViZDE0ZjI1YzRjMzFhZjIzMDYxMGEzMTNlNDMzXzExLTktMS0xLTc4NjA4_26de4230-3a07-4fa0-ba87-7a37cf902524"
      unitRef="usd">512363000</us-gaap:Goodwill>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI0NA_7c67090b-0b42-44a9-b907-a488784cc359"
      unitRef="usd">133200000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI0NA_fae54f36-358e-48fe-b79f-1170d2adf370"
      unitRef="usd">133200000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI4Nw_12155889-5436-4c46-8445-d6170ff271ce"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI4Nw_15ff2f97-3c3d-4035-9dfa-99db7cb5b19d"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:NumberOfReportingUnits
      contextRef="i89b997777cfc479cbbd4ef3e03aeeabf_D20211031-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzgyMQ_26824c4a-3283-42f9-bb62-6ec6de5e9e58"
      unitRef="reporting_unit">8</us-gaap:NumberOfReportingUnits>
    <rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE1ODU_8716dd44-3a7e-428d-a00d-874c19025467"
      unitRef="reporting_unit">0</rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits>
    <rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE1ODU_eff664da-17a6-4753-8342-990bf4dc22b1"
      unitRef="reporting_unit">0</rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits>
    <rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE1ODU_fdaca3f8-ff1e-49a4-8e90-f3919171f31c"
      unitRef="reporting_unit">0</rock:ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits>
    <us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1NTg_45ec0244-de8e-456e-95bf-48c63c3777f2">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Acquired intangible assets consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.624%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indefinite-lived intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finite-lived intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unpatented technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,163&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,656&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108,591&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,371&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,006&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;157,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,081&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total acquired intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;212,607&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,081&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i28ed3266a0424e99ac87b56e62129621_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtMS0xLTEtNzg2MDg_c3dbc7f0-226d-4ede-8fe8-8f4b72162164"
      unitRef="usd">55500000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <rock:IndefiniteLivedAccumulatedAmortization
      contextRef="i28ed3266a0424e99ac87b56e62129621_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtMy0xLTEtNzg2MDg_2a8628c6-d638-4ba0-8e96-f08156867fb5"
      unitRef="usd">0</rock:IndefiniteLivedAccumulatedAmortization>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="ie3a7d0c314a24499b50a7c7fbd12721a_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtNS0xLTEtNzg2MDg_8fc0c7e2-40d7-4fd4-9fa8-3308d96e7421"
      unitRef="usd">52700000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <rock:IndefiniteLivedAccumulatedAmortization
      contextRef="ie3a7d0c314a24499b50a7c7fbd12721a_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzMtNy0xLTEtNzg2MDg_eea24c60-22d5-4898-a3e9-68f91401833c"
      unitRef="usd">0</rock:IndefiniteLivedAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i89da7e5c329e4105aa84f199f668c844_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtMS0xLTEtNzg2MDg_029161f1-b41b-4947-9693-387a2e11c259"
      unitRef="usd">5448000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i89da7e5c329e4105aa84f199f668c844_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtMy0xLTEtNzg2MDg_e1f15174-822e-4efc-be55-e1bc6c1b0c80"
      unitRef="usd">4481000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ic469bc0572314902853c3ad9e1d3baef_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtNS0xLTEtNzg2MDg_2195f4b6-acf8-4ed4-ad1f-f08f57145f9c"
      unitRef="usd">5521000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ic469bc0572314902853c3ad9e1d3baef_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzUtNy0xLTEtNzg2MDg_08bfaa4d-c5d4-46f1-ad4a-99abc266e1e0"
      unitRef="usd">4011000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i72e7b4f08fda409a971ae7455c53cc60_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtMS0xLTEtNzg2MDg_4e36f23a-ddc5-483c-9bc8-930bbbea35b9"
      unitRef="usd">34163000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i72e7b4f08fda409a971ae7455c53cc60_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtMy0xLTEtNzg2MDg_8c98ed6c-e827-4df5-89a9-4b8df03ea8f0"
      unitRef="usd">22037000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ic50c252ace0543c7b187a1b6c1ee0fc4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtNS0xLTEtNzg2MDg_e9cbea45-7300-4a94-9057-f64330918360"
      unitRef="usd">38474000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ic50c252ace0543c7b187a1b6c1ee0fc4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzYtNy0xLTEtNzg2MDg_c402f429-a2ef-4eb0-aa0e-bb682547116e"
      unitRef="usd">20656000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iaffcc7b0c9354b07a05abe249f56522f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctMS0xLTEtNzg2MDg_ac8b7a2e-a7f8-471c-a381-6a9acb0fbc8d"
      unitRef="usd">115125000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iaffcc7b0c9354b07a05abe249f56522f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctMy0xLTEtNzg2MDg_baba04f0-be39-41ee-bcae-3a72c4c55bfb"
      unitRef="usd">46557000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i9f5c95a2686047609f20149ad733e751_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctNS0xLTEtNzg2MDg_53977173-8a95-417b-94d9-d68b6d996943"
      unitRef="usd">108591000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i9f5c95a2686047609f20149ad733e751_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzctNy0xLTEtNzg2MDg_1e4802e5-f1dc-4532-b4f5-bacabe1f4d09"
      unitRef="usd">39832000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i042ca367b3054f458691848bac77b1c7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtMS0xLTEtNzg2MDg_db162b8c-435a-4b1b-9dcb-b3764fe965fe"
      unitRef="usd">2371000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i042ca367b3054f458691848bac77b1c7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtMy0xLTEtNzg2MDg_26e32035-423e-48b4-b010-6471023314c3"
      unitRef="usd">2006000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="id68ad57c962249609b7ddaa9d04ac3f4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtNS0xLTEtNzg2MDg_22882c13-1d88-43df-a3c1-58c662f79868"
      unitRef="usd">2686000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="id68ad57c962249609b7ddaa9d04ac3f4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzgtNy0xLTEtNzg2MDg_b4c714d1-ee21-4528-bfc9-2ca0e826abe4"
      unitRef="usd">1969000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i7888d078e4f843edaf117043996952ed_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktMS0xLTEtNzg2MDg_f24e7ad5-1128-41a6-8896-2cae55dd64c6"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i7888d078e4f843edaf117043996952ed_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktMy0xLTEtNzg2MDg_27d3301e-712f-4727-9d83-91a460b9c3a8"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i1dc5b3189a014aaf816b9491ac09dee8_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktNS0xLTEtNzg2MDg_0ca6f631-709c-4921-a4ee-219bde7d0f74"
      unitRef="usd">7200000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i1dc5b3189a014aaf816b9491ac09dee8_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzktNy0xLTEtNzg2MDg_8c2eea78-d455-4fe5-be14-2c7e469963ec"
      unitRef="usd">7200000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTEtMS0xLTc4NjA4_0853e76c-c639-427e-8969-64930459b0e8"
      unitRef="usd">157107000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTMtMS0xLTc4NjA4_b16ee28c-ad61-481a-a9ee-a1f7fd26b0fa"
      unitRef="usd">75081000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTUtMS0xLTc4NjA4_f4114e4d-dfcf-48be-b1af-dad5844bd81a"
      unitRef="usd">162472000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzEwLTctMS0xLTc4NjA4_0a829371-e81b-4365-a59c-e5b721eb265a"
      unitRef="usd">73668000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <rock:AcquiredIntangibleAssetsTotal
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTEtMS0xLTc4NjA4_8c268e19-f7ac-4833-ad95-5d956a5e0f1c"
      unitRef="usd">212607000</rock:AcquiredIntangibleAssetsTotal>
    <rock:TotalAcquiredIntangibleAssetsAccumulatedAmortization
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTMtMS0xLTc4NjA4_390ce00c-c956-41b7-8a54-eace54aba54d"
      unitRef="usd">75081000</rock:TotalAcquiredIntangibleAssetsAccumulatedAmortization>
    <rock:AcquiredIntangibleAssetsTotal
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTUtMS0xLTc4NjA4_f0051ed6-f3f2-457f-b0ac-de90096047a4"
      unitRef="usd">215172000</rock:AcquiredIntangibleAssetsTotal>
    <rock:TotalAcquiredIntangibleAssetsAccumulatedAmortization
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkN2I2MDZlNjg1NzY0Yjk3ODEyMTdjNjg5N2Q5ZDEwOS90YWJsZXJhbmdlOmQ3YjYwNmU2ODU3NjRiOTc4MTIxN2M2ODk3ZDlkMTA5XzExLTctMS0xLTc4NjA4_e342c9a3-ed2a-4d21-9d1c-91963f18d8bf"
      unitRef="usd">73668000</rock:TotalAcquiredIntangibleAssetsAccumulatedAmortization>
    <us-gaap:ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill
      contextRef="ifb286abff79f433bb164050d22b67bf2_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzE4Njk_2a1a93e9-aaca-47ac-b3b3-d4db7543638c"
      unitRef="usd">8300000</us-gaap:ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1ODA_a15d056d-5ba4-454e-8c27-50c9027d5eb0">The following table summarizes amortization expense for the years ended December&#160;31 (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.047%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,856&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo1MjA2MDI0NDY1YzY0OWRmYjA1NDAzOTcxMDVhMDRhZC90YWJsZXJhbmdlOjUyMDYwMjQ0NjVjNjQ5ZGZiMDU0MDM5NzEwNWEwNGFkXzEtMS0xLTEtNzg2MDg_91db5952-f3db-4bf8-9c91-8b340e39a67a"
      unitRef="usd">11584000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo1MjA2MDI0NDY1YzY0OWRmYjA1NDAzOTcxMDVhMDRhZC90YWJsZXJhbmdlOjUyMDYwMjQ0NjVjNjQ5ZGZiMDU0MDM5NzEwNWEwNGFkXzEtMy0xLTEtNzg2MDg_362ad2c5-a4f1-4351-8a4a-c33b626d8574"
      unitRef="usd">18856000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTo1MjA2MDI0NDY1YzY0OWRmYjA1NDAzOTcxMDVhMDRhZC90YWJsZXJhbmdlOjUyMDYwMjQ0NjVjNjQ5ZGZiMDU0MDM5NzEwNWEwNGFkXzEtNS0xLTEtNzg2MDg_1f069425-75e3-452d-b7d8-eebfe703caf5"
      unitRef="usd">9663000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90ZXh0cmVnaW9uOmQ3NjViNWIzNmQ2YTQ5YzM5NTA5Zjk2NTMzMzk0MzYyXzI1NTY_eac6ed66-2b1c-4ea8-a724-aa9a01508397">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense related to acquired intangible assets for the next five years ended December&#160;31 is estimated as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.401%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtMi0xLTEtNzg2MDg_0e1effbd-ed45-4fb8-9352-5c161161c2a1"
      unitRef="usd">11102000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtNC0xLTEtNzg2MDg_dc7c1864-abde-4818-8b5a-e27be92285da"
      unitRef="usd">10922000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtNi0xLTEtNzg2MDg_05e75f26-5ff3-44c7-8cf6-9fb90674e313"
      unitRef="usd">10782000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtOC0xLTEtNzg2MDg_a24b2d2b-7742-4e19-b778-cf1437d70900"
      unitRef="usd">9370000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDYvZnJhZzpkNzY1YjViMzZkNmE0OWMzOTUwOWY5NjUzMzM5NDM2Mi90YWJsZTpkODkyNWZlZDQyY2U0M2E4YjczY2E1M2I2NzJmMDY2NS90YWJsZXJhbmdlOmQ4OTI1ZmVkNDJjZTQzYThiNzNjYTUzYjY3MmYwNjY1XzEtMTAtMS0xLTc4NjA4_ae6febe9-bf1e-4028-96ae-11f238c3ed98"
      unitRef="usd">7728000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90ZXh0cmVnaW9uOjhiYTA2Y2EzODViMDQ2M2VhM2ZkYWE3ODJlZGRmZjRlXzkxNQ_1616077b-1e8c-4813-837b-b1b4d0cddabb">ACCRUED EXPENSES&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued expenses at December&#160;31 consisted of the following (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer rebates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,768&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_2d1782bf-442c-4339-b6ee-027a31ee3839"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_ccd48544-48b8-4ce4-885c-7cb992fa852e"&gt;Current operating lease liability&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insurance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued warranties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,251&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest and taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unearned revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,572&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of MSPP liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,947&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,721&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued expenses for insurance are primarily for general liability, workers&#x2019; compensation and employee healthcare policies for which the Company is self-insured up to certain per-occurrence and aggregate limits. The amounts &lt;/span&gt;&lt;/div&gt;accrued represent the Company's best estimates of the probable amount of claims to be paid. Differences between the amounts accrued and the amount that may be reasonably possible of payment are not material.  Accrued expenses for unearned revenue primarily relate to up-front customer deposits received on contracts for goods and services to be provided by the Company as further discussed in Note 3 "Revenue."  The current portion of Management Stock Purchase Plan liabilities ("MSPP liabilities") represents the Company's equity-based awards that are settled in cash, further described in Note 12 "Equity-Based Compensation."</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90ZXh0cmVnaW9uOjhiYTA2Y2EzODViMDQ2M2VhM2ZkYWE3ODJlZGRmZjRlXzkyMg_8efb30c4-4d07-4037-91b8-6703809d6041">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued expenses at December&#160;31 consisted of the following (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer rebates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,768&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_2d1782bf-442c-4339-b6ee-027a31ee3839"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMC0xLTEtNzg2MDg_ccd48544-48b8-4ce4-885c-7cb992fa852e"&gt;Current operating lease liability&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insurance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued warranties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,251&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest and taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unearned revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,572&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of MSPP liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,947&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,721&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <rock:AccruedCustomerRebatesCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEtMS0xLTEtNzg2MDg_5bb20862-4a3b-4aa7-9152-074c63140c35"
      unitRef="usd">17010000</rock:AccruedCustomerRebatesCurrent>
    <rock:AccruedCustomerRebatesCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEtMy0xLTEtNzg2MDg_b4f769c3-450c-4237-bea1-a19eb4d8c14f"
      unitRef="usd">15293000</rock:AccruedCustomerRebatesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzItMS0xLTEtODc4MjI_cc84d13d-54c0-42e8-be58-0de1f9ffa622"
      unitRef="usd">16768000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzItMy0xLTEtODc4MjI_fefb4aaf-075d-4d89-96ae-a94d7b428954"
      unitRef="usd">15253000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMS0xLTEtNzg2MDg_27f04e12-f2d9-4d82-bb6d-e1dbacce8b13"
      unitRef="usd">8620000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzQtMy0xLTEtNzg2MDg_bc1166f7-0ab9-47b4-95cd-737ec9db3d75"
      unitRef="usd">7239000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzUtMS0xLTEtNzg2MDg_83a36eb8-8e8b-4508-bcab-8430c24229d4"
      unitRef="usd">6440000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzUtMy0xLTEtNzg2MDg_42d1ba79-f34c-4423-8dd4-3eb2f1af4a03"
      unitRef="usd">7310000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzYtMS0xLTEtOTQ0OTY_ca3d13eb-1746-49c3-9788-9898209ad9e0"
      unitRef="usd">6251000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzYtMy0xLTEtOTQ0OTY_10654d11-a080-4ec2-a082-8237530944ac"
      unitRef="usd">5686000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:AccruedInsuranceCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMS0xLTEtODUwMDI_da3a3f03-8424-4530-8f66-3a39612b06d6"
      unitRef="usd">5696000</us-gaap:AccruedInsuranceCurrent>
    <us-gaap:AccruedInsuranceCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMy0xLTEtODUwMDI_33a13cdb-970c-4fc2-8cd5-0abbc74b89f4"
      unitRef="usd">5463000</us-gaap:AccruedInsuranceCurrent>
    <us-gaap:ContractWithCustomerLiability
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMS0xLTEtNzg2MDg_95f26be1-a0c3-4486-bf08-1ed3bc5da59b"
      unitRef="usd">4572000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzctMy0xLTEtNzg2MDg_e2e89d8a-8dd9-41f1-9636-ebbcb4786d8b"
      unitRef="usd">3681000</us-gaap:ContractWithCustomerLiability>
    <rock:AccruedSharebasedCompensationCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzktMS0xLTEtNzg2MDg_33168fd8-d476-48b5-add4-2039d2c495cb"
      unitRef="usd">2267000</rock:AccruedSharebasedCompensationCurrent>
    <rock:AccruedSharebasedCompensationCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzktMy0xLTEtNzg2MDg_3064331b-07bd-43a4-8f4a-ee9712c1dc61"
      unitRef="usd">2947000</rock:AccruedSharebasedCompensationCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEwLTEtMS0xLTc4NjA4_71b11dcd-1278-42e8-b5f0-ef23c57b0467"
      unitRef="usd">6097000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzEwLTMtMS0xLTc4NjA4_87dc2432-8427-457f-aa31-cd6e27cd3ee6"
      unitRef="usd">5121000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrentAndNoncurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzExLTEtMS0xLTc4NjA4_161711f7-2e03-419e-8973-4bf59c4b632e"
      unitRef="usd">73721000</us-gaap:AccruedLiabilitiesCurrentAndNoncurrent>
    <us-gaap:AccruedLiabilitiesCurrentAndNoncurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMDkvZnJhZzo4YmEwNmNhMzg1YjA0NjNlYTNmZGFhNzgyZWRkZmY0ZS90YWJsZTpmZTY0MTNjZDZkNzg0ODA2ODQ4YWNiMjM1NTRiZWNiNC90YWJsZXJhbmdlOmZlNjQxM2NkNmQ3ODQ4MDY4NDhhY2IyMzU1NGJlY2I0XzExLTMtMS0xLTc4NjA4_0bfd1ef0-f210-46c0-a02b-c9ad686a476b"
      unitRef="usd">67993000</us-gaap:AccruedLiabilitiesCurrentAndNoncurrent>
    <us-gaap:LongTermDebtTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE5NDY_c6549f33-af85-42ae-b4f7-cd00322e238b">DEBT&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-term debt consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.063%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.955%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revolving credit facility&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;91,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less unamortized debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,238)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(719)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Revolving Credit Facility&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On December 8, 2022, the Company entered into a Credit Agreement (the "Credit Agreement"), and concurrently with entering into the Credit Agreement, the Company paid off all amounts owed under the Sixth Amended and Restated Credit Agreement dated as of January 24, 2019, and which was terminated without any prepayment penalties. The Credit Agreement provides for a revolving credit facility and letters of credit in an aggregate amount equal to $400&#160;million. The Company can request additional financing to increase the revolving credit facility to $700&#160;million or enter into a term loan of up to $300&#160;million subject to conditions set forth in the Credit Agreement.  The Credit Agreement contains two financial covenants.  As of December 31, 2022, the Company was in compliance with all financial covenants.  The Credit Agreement terminates on December 8, 2027.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Interest rates on the revolving credit facility under the Credit Agreement bear interest, at the Company&#x2019;s option, at a rate equal to the applicable margin plus (a) a base rate, (b) a daily simple secured overnight financing rate ("SOFR") rate, (c) a term SOFR rate or (d) for certain foreign currencies, a foreign currency rate, in each case subject to a 0% floor. Through March 31, 2023, the Credit Agreement has an initial applicable margin of 0.125% for base rate loans and 1.125% for SOFR and alternative currency loans. Thereafter, the applicable margin ranges from 0.125% to 1.00% for base rate loans and from 1.125% to 2.00% for SOFR and alternative currency loans based on the Company&#x2019;s Total Net Leverage Ratio, as defined in the Credit Agreement. In addition, the Credit Agreement is subject to an annual commitment fee, payable quarterly, which is initially 0.20% of the daily average undrawn balance of the revolving credit facility and, from and after April 1, 2023, ranges between 0.20% and 0.25% of the daily average undrawn balance of the revolving credit facility based on the Company&#x2019;s Total Net Leverage Ratio.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Borrowings under the Credit Agreement are secured by the trade receivables, inventory, personal property, equipment, and general intangibles of the Company&#x2019;s significant domestic subsidiaries. Capital distributions are subject to certain Total Net Leverage Ratio requirements and capped by an annual aggregate limit under the Credit Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On January 24, 2019, the Company entered into the Sixth Amended and Restated Credit Agreement ("Senior Credit Agreement"), which amended and restated the Company&#x2019;s Fifth Amended and Restated Credit Agreement dated December 9, 2015, and provided a revolving credit facility and letters of credit in an aggregate amount equal to $400 million. The Company had the ability to request additional financing to increase the revolving credit facility to $700 million or enter into a term loan of up to $300 million subject to conditions set forth in the Senior Credit Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Interest rates on the revolving credit facility under the Senior Credit Agreement were based on LIBOR plus an additional margin that ranges from 1.125% to 2.00%.  In addition, the revolving credit facility under the Senior Credit Agreement was subject to an undrawn commitment fee ranging between 0.15% and 0.25% based on the Total Leverage Ratio and the daily average undrawn balance. The Senior Credit Agreement terminated on December 8, 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Standby letters of credit of $4.5 million have been issued under the Credit Agreement to third parties on behalf of the Company as of December&#160;31, 2022. These letters of credit reduce the amount otherwise available under the revolving credit facility. The Company had $304.5 million and $369.3 million of availability under the revolving credit facility as of December 31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total cash paid for interest in the years ended December&#160;31 was (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.133%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.765%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.623%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest expense, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;703&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest income &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-cash adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(679)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(345)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(345)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for interest&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,542&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,563&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LongTermDebtTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE5NDk_d9633da6-158e-438c-9b66-e41c114fe1bc">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-term debt consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.063%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.955%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revolving credit facility&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;91,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less unamortized debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,238)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(719)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="ide0cba670a934b7fa6ed49872e0a383f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzEtMS0xLTEtNzg2MDg_ed6f02d0-e087-48f7-aa9a-38af6391cc32"
      unitRef="usd">91000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i390ed5e5398a4d0f8bde706fbda3f977_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzEtMy0xLTEtNzg2MDg_b7993dcc-f17a-4863-a38b-6980ad8ab31e"
      unitRef="usd">24500000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzMtMS0xLTEtNzg2MDg_4b7c9181-bf57-4bc6-83cb-5863dcc9cc34"
      unitRef="usd">2238000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzMtMy0xLTEtNzg2MDg_4297ed0d-97e1-464d-8450-944427256227"
      unitRef="usd">719000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzQtMS0xLTEtNzg2MDg_53d3aa6b-f30a-467b-b164-2be64da04f07"
      unitRef="usd">88762000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTo2YmM4Mzc4ZmZiNWI0Mjc4YTVmZWJmMDMxYTIzOWY1Mi90YWJsZXJhbmdlOjZiYzgzNzhmZmI1YjQyNzhhNWZlYmYwMzFhMjM5ZjUyXzQtMy0xLTEtNzg2MDg_d0150a24-7266-4fb1-a7a4-348cefa74dd5"
      unitRef="usd">23781000</us-gaap:LongTermDebt>
    <us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity
      contextRef="id7bee0a4f4c04f22be0ab908a812d590_I20221208"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ4OTA_2db8f86b-132d-4583-a0c4-4acffbeaf434"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="id7bee0a4f4c04f22be0ab908a812d590_I20221208"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ4NzY_07916071-16be-47d7-b220-93e015c06cff"
      unitRef="usd">700000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i87eac64abb6b4190919865e4e52c33ab_I20221208"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MDQ_1510f49d-6b2e-41ad-9c9f-ef56c379222a"
      unitRef="usd">300000000</us-gaap:DebtInstrumentFaceAmount>
    <rock:DebtInstrumentNumberOfDebtCovenants
      contextRef="id7bee0a4f4c04f22be0ab908a812d590_I20221208"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5ODQ_f34ba61b-c042-4e35-85aa-5380f04c58a2"
      unitRef="debtcovenant">2</rock:DebtInstrumentNumberOfDebtCovenants>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ie128a3846c194d75bd402acbbd1a4fe9_I20221208"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NDA_74432347-9554-425e-aa8d-e575097c5947"
      unitRef="number">0.00125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i72e5782bc3234021bc2a697ee85bfdde_I20221208"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5Nzc_bc4f070a-c23c-4e4c-904d-3ddf057525a0"
      unitRef="number">0.01125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i7ad71497c76d470a84d354b521123b79_I20221208"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NDg_3b7a0c4a-db7a-4edd-b5d4-2287f130cce6"
      unitRef="number">0.00125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="id2456037a4904999b206b3a3b3b12e6e_I20221208"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NzA_a52c0cda-4656-4c56-a334-d9153cd3f475"
      unitRef="number">0.0100</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i491829aa14ff445087fe4d84630a451f_I20221208"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MTg_dc1bd66b-4df4-4fc9-b1c4-92ab87f06d84"
      unitRef="number">0.01125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i7c6612ecdb514a43b8940d7651e47159_I20221208"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MjY_b63dd13d-8516-445d-b532-f9d9966a4d92"
      unitRef="number">0.0200</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="i497e4dc4ca374e6f869a97d6180e3e4d_D20221208-20221208"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5MzM_a80f1bb1-7da3-409b-a27d-46a9131356ff"
      unitRef="number">0.0020</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="i8864c40a209547638ebedf1fbf1f7123_D20221208-20221208"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NTY_f905b5a7-a421-4a0b-a539-3e69efe60fd7"
      unitRef="number">0.0020</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="i0dd4765697774aa0b53e04ec0ca643d2_D20221208-20221208"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzIxOTkwMjMyNjQ5NjM_b8b35187-1085-4ed8-95de-62d6ac3203aa"
      unitRef="number">0.0025</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity
      contextRef="ic0bce679a65c45d6b29a9ec16c6b6d10_I20190124"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzQyOA_2c831808-88a3-4621-bf28-9874b0da2d9f"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ic0bce679a65c45d6b29a9ec16c6b6d10_I20190124"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzUyMg_4978e838-a93d-4d64-ae8b-d5de8bdb4de2"
      unitRef="usd">700000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i5b17fcbf0d4e40d7ba6715216de7c164_I20190124"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzU2MA_085d497d-865e-40ac-912f-4149fd29f804"
      unitRef="usd">300000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="if7ba4301de314a0ea4778486cdb23062_D20190124-20190124"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzg3OA_3e793bf6-d272-4f88-9007-f5dbe78471a0"
      unitRef="number">0.01125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="ia6b99920cc0b47cd9139f7f7859da644_D20190124-20190124"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzg4NA_c492c0d6-0848-485d-b510-54514ed02a80"
      unitRef="number">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="i1a323de35a0e4ed79c546beae5e4d83f_D20190124-20190124"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzk4OA_10d11820-2f58-49a4-8f4e-408aa1450755"
      unitRef="number">0.0015</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="i664dba56ce324a7a84153d83b9d28430_D20190124-20190124"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzk5NQ_fb2bbfa6-3b22-4f2d-920e-98ae695e5dff"
      unitRef="number">0.0025</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i2131f3e7067e47028fbc6dbf4486512c_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE1MTk_fd8634e5-7110-4e0e-b17c-57c82cab07e3"
      unitRef="usd">4500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i2e00a01d8de24157995e47b11966bd92_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE3NTU_647dc6e6-6371-4ce6-89c7-e4d23ff7d670"
      unitRef="usd">304500000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="id7e0272766e042deb09c8d7bf29912bf_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE3NjI_c9f20228-dcb4-4b2c-b7fe-0d22fa45e5cb"
      unitRef="usd">369300000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <rock:ScheduleOfInterestCashPaymentTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90ZXh0cmVnaW9uOjkxNzkyY2QxOTZjMDQ0NzQ4ZTY1YWJkMzlmMTkxMDlmXzE5NTY_240b7f8d-fd1c-4495-a7e8-2f855adb2c04">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total cash paid for interest in the years ended December&#160;31 was (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.133%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.765%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.623%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest expense, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;703&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest income &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-cash adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(679)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(345)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(345)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for interest&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,542&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,563&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:ScheduleOfInterestCashPaymentTableTextBlock>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzEtMS0xLTEtNzg2MDg_51be01f4-5291-4c96-ac37-b15a333d34e5"
      unitRef="usd">-4047000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzEtMy0xLTEtNzg2MDg_56acc200-b7c6-40f0-9b7f-14aca3c57b1e"
      unitRef="usd">-1639000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzEtNS0xLTEtNzg2MDg_ba3b28f7-e63d-4b93-a5fa-e7b7620a22a8"
      unitRef="usd">-703000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeOther
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzItMS0xLTEtNzg2MDg_3cb4e1ad-bc65-4017-87e1-164b63dec451"
      unitRef="usd">174000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzItMy0xLTEtNzg2MDg_7875573a-6fda-4e51-8274-80f40147a7dd"
      unitRef="usd">269000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzItNS0xLTEtNzg2MDg_8fb6e4e1-57f9-459e-9032-baaea282beff"
      unitRef="usd">276000</us-gaap:InterestIncomeOther>
    <rock:NoncashInterestAdjustment
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzMtMS0xLTEtNzg2MDg_b6b79f3c-ab68-4773-be5e-94be815852b1"
      unitRef="usd">-679000</rock:NoncashInterestAdjustment>
    <rock:NoncashInterestAdjustment
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzMtMy0xLTEtNzg2MDg_a4cf3d8a-bb92-4a57-9551-c2add1a8e269"
      unitRef="usd">-345000</rock:NoncashInterestAdjustment>
    <rock:NoncashInterestAdjustment
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzMtNS0xLTEtNzg2MDg_ac9f9c97-c01b-49c7-8125-2e3e61f19ab7"
      unitRef="usd">-345000</rock:NoncashInterestAdjustment>
    <us-gaap:InterestPaidNet
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzQtMS0xLTEtNzg2MDg_1b4df867-3883-43a5-9516-b21ecd2d774c"
      unitRef="usd">3542000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzQtMy0xLTEtNzg2MDg_8b79a2ba-6f27-487b-8bf5-2077f1703d26"
      unitRef="usd">1563000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTIvZnJhZzo5MTc5MmNkMTk2YzA0NDc0OGU2NWFiZDM5ZjE5MTA5Zi90YWJsZTplMTE5MTI1NGEwZTQ0OWFmYWIzOWI5ZDNkOTVhOWQ4Zi90YWJsZXJhbmdlOmUxMTkxMjU0YTBlNDQ5YWZhYjM5YjlkM2Q5NWE5ZDhmXzQtNS0xLTEtNzg2MDg_35f0564a-c702-4451-b821-305b4539bdc1"
      unitRef="usd">634000</us-gaap:InterestPaidNet>
    <us-gaap:PostemploymentBenefitsDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMjQ_f4577824-af78-4e2f-848e-86467e4db11f">PENSION AND OTHER POSTRETIREMENT BENEFITS&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has a 401(k) plan which all employees of U.S. subsidiaries are eligible to participate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company contributes to a multiemployer defined benefit pension plan under the terms of a collective-bargaining agreement that covers union-represented employees.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has an unfunded postretirement healthcare plan which provides health insurance to certain employees and their spouses upon retirement. This plan has been frozen and no additional participants will be added to the plan in the future.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total expense for all retirement plans for the years ended December&#160;31 was (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:44.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;401(k) plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,580&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,403&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Multiemployer and other defined benefit and pension plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Postretirement healthcare plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;342&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;351&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total retirement plan expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's one multiemployer plan is underfunded and has a rehabilitation plan in place. The rehabilitation plan requires minimum contributions from the Company. Given the status of this plan, it is reasonably possible that future contributions to the plan will increase although the Company cannot reasonably estimate a possible range of increased contributions as of December&#160;31, 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the changes in the accumulated postretirement benefit obligation related to the Company&#x2019;s unfunded postretirement healthcare benefits at December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.976%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Projected benefit obligation at January&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,443&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan amendments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Actuarial gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,784)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(200)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Benefits paid, net of contributions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(316)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(328)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Projected benefit obligation at December&#160;31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Under funded status&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,202)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unamortized prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized actuarial (gain) loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(278)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,530&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount recognized&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,155)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,260)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts recognized in the consolidated financial statements consisted of (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.590%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.592%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued postretirement benefit liability:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;358&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long term portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,876&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pre-tax accumulated other comprehensive loss &#x2013; unamortized post-retirement healthcare costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(74)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,942)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount recognized&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,155&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,260&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The measurement date used to determine postretirement benefit obligation measures was December&#160;31.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of net periodic postretirement benefit cost charged to expense for the years ended December&#160;31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of unrecognized prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss amortization (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;113&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;211&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assumptions used to calculate the benefit obligation:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Annual rate of increase in the per capita cost of:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:20.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Medical costs before age 65 (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:20.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Medical costs after age 65 (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:20.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prescription drug costs (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:36pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)  For 2022, it was assumed that these rates would gradually decline to 4.0% by 2075.  For 2021 and 2020, it was assumed that these rates would gradually decline to 3.8% by 2075.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2)  Actuarial losses are amortized utilizing the corridor approach. Differences between actual experience and the actuarial assumptions are reflected in (gain)/loss. If the total net (gain) or loss exceeds 10 percent of the greater of the accumulated postretirement benefit obligation or plan assets, this excess must be amortized over the average remaining service period of the active plan participants. If most of the plan participants are inactive, the amortization period is the expected future lifetime of inactive plan participants.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected benefit payments from the plan for the years ended December&#160;31 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:24.010%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.913%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.733%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years 2028 - 2032&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected benefit payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;355&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PostemploymentBenefitsDisclosureTextBlock>
    <us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzNTU_891bb8ed-2bf1-4e41-aec7-8aaf6c65a829">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total expense for all retirement plans for the years ended December&#160;31 was (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:44.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;401(k) plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,580&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,403&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Multiemployer and other defined benefit and pension plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Postretirement healthcare plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;342&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;351&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total retirement plan expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="i76b0f0e268d043b09e73783a49354a64_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzEtMi0xLTEtNzg2MDg_d5602f3c-e4b3-424c-8095-f94110a7c997"
      unitRef="usd">3580000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="ief7806189c624d50965f724b3ad91ac6_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzEtNC0xLTEtNzg2MDg_747ee12d-d71f-4b1b-84b1-e4517e970701"
      unitRef="usd">3196000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="if8d8c6e9addc4a84ab0953c320143ea7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzEtNi0xLTEtNzg2MDg_7f809d5c-b7f5-430e-9563-2fc2e06f42ab"
      unitRef="usd">2403000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="idf8b2e4b662e4079a2de5600f10962ee_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzItMi0xLTEtNzg2MDg_324890c7-d006-4e65-958c-ad63abc9bf2d"
      unitRef="usd">79000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="i8bc76c5e5bc4472888c9c5bffaf2af46_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzItNC0xLTEtNzg2MDg_ba9ccb7f-556a-4a9a-80ad-d220d0f4a74f"
      unitRef="usd">78000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="iec3c4084131b4c27ac59fe2752c82bd7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzItNi0xLTEtNzg2MDg_154e5742-fb8c-4712-8735-adcde41dc7ec"
      unitRef="usd">70000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzMtMi0xLTEtNzg2MDg_6bac1305-7467-400c-9fb2-80fd738d5466"
      unitRef="usd">342000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzMtNC0xLTEtNzg2MDg_2b3cd61a-87f8-40dd-a4ee-d2e88dc2ce75"
      unitRef="usd">411000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzMtNi0xLTEtNzg2MDg_dcbdd531-4aef-412a-8411-86af0c055824"
      unitRef="usd">351000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzQtMi0xLTEtNzg2MDg_d0fb924e-11ec-4927-94a1-d105edcea40b"
      unitRef="usd">4001000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzQtNC0xLTEtNzg2MDg_56d79afd-425b-493d-9f92-2b54f758a61b"
      unitRef="usd">3685000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <us-gaap:PostemploymentBenefitsPeriodExpense
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZToxN2EzYTdjYmRiNjQ0MDU3YjdhMDA1Mzg3MGU4NDA2MC90YWJsZXJhbmdlOjE3YTNhN2NiZGI2NDQwNTdiN2EwMDUzODcwZTg0MDYwXzQtNi0xLTEtNzg2MDg_36b12b19-26d5-465f-a564-a78603ac82b2"
      unitRef="usd">2824000</us-gaap:PostemploymentBenefitsPeriodExpense>
    <rock:RetirementPlanNumberOfPlans
      contextRef="i775ce2acfd4f479eb91079a2f9fcd0a6_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzY3OA_51d6843a-9368-4fac-90d5-d64d3e941d36"
      unitRef="plan">1</rock:RetirementPlanNumberOfPlans>
    <us-gaap:ScheduleOfNetFundedStatusTableTextBlock
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMzY_5baeb654-8305-4caa-b36f-acca7ef77a4e">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the changes in the accumulated postretirement benefit obligation related to the Company&#x2019;s unfunded postretirement healthcare benefits at December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.976%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Projected benefit obligation at January&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,443&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan amendments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Actuarial gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,784)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(200)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Benefits paid, net of contributions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(316)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(328)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Projected benefit obligation at December&#160;31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Under funded status&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,202)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unamortized prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized actuarial (gain) loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(278)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,530&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount recognized&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,155)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,260)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNetFundedStatusTableTextBlock>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEtMS0xLTEtNzg2MDg_f4b6c148-7d0d-4f55-80e8-d9203dd71918"
      unitRef="usd">6202000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i3a361c2e35a94f0299b5ad792874480e_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEtMy0xLTEtNzg2MDg_eb7779b3-d919-4de3-871e-b4ab93d63f14"
      unitRef="usd">6443000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzMtMS0xLTEtNzg2MDg_13f0c7f0-4e49-4ef6-8a13-39ef12964c74"
      unitRef="usd">127000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzMtMy0xLTEtNzg2MDg_05162720-2763-4d44-9bc1-ff19003acb00"
      unitRef="usd">125000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanPlanAmendments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzQtMS0xLTEtNzg2MDg_9e77d8d5-df89-4dec-9062-f34de45b5baa"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanPlanAmendments>
    <us-gaap:DefinedBenefitPlanPlanAmendments
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzQtMy0xLTEtNzg2MDg_65551877-e538-409e-9ad0-59fa38af0d50"
      unitRef="usd">162000</us-gaap:DefinedBenefitPlanPlanAmendments>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzUtMS0xLTEtNzg2MDg_7e09c2bd-94ae-4109-8d02-f00de2268a1f"
      unitRef="usd">1784000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzUtMy0xLTEtNzg2MDg_99d6b8ec-00c9-47d5-ae4a-91b3137fba8c"
      unitRef="usd">200000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzYtMS0xLTEtNzg2MDg_0608d365-5683-40cf-a044-86ce2806f8d9"
      unitRef="usd">316000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzYtMy0xLTEtNzg2MDg_f6e1c4e1-1dda-46a3-be2a-b5ac25d4bed9"
      unitRef="usd">328000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzctMS0xLTEtNzg2MDg_73dcfcb9-0a5c-4903-8bf2-e4ea4c2b02a1"
      unitRef="usd">4229000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzctMy0xLTEtNzg2MDg_30fcba75-9f1a-477e-9380-9d26cca109c9"
      unitRef="usd">6202000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzgtMS0xLTEtNzg2MDg_07508fb6-955c-4bff-812b-858210ee57ac"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzgtMy0xLTEtNzg2MDg_810f06c6-c5e7-4290-a788-8a918a8b0dd3"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFundedStatusOfPlan
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzktMS0xLTEtNzg2MDg_69f7caaf-e0ec-4786-9057-10783ff69e46"
      unitRef="usd">-4229000</us-gaap:DefinedBenefitPlanFundedStatusOfPlan>
    <us-gaap:DefinedBenefitPlanFundedStatusOfPlan
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzktMy0xLTEtNzg2MDg_518e0950-c0f2-46b7-956e-b30ba9bbe715"
      unitRef="usd">-6202000</us-gaap:DefinedBenefitPlanFundedStatusOfPlan>
    <us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEwLTEtMS0xLTc4NjA4_645c2cbc-848b-4775-9ae4-373c59508e47"
      unitRef="usd">352000</us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax>
    <us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEwLTMtMS0xLTc4NjA4_fe13ee53-68ee-4d89-8ece-0f84fd391c07"
      unitRef="usd">412000</us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax>
    <us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzExLTEtMS0xLTc4NjA4_a12c42e6-26c5-4cd2-a388-709c9476122e"
      unitRef="usd">278000</us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax>
    <us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzExLTMtMS0xLTc4NjA4_4e1aa7af-9762-4951-a74a-a0cd86d57b3c"
      unitRef="usd">-1530000</us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax>
    <us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEyLTEtMS0xLTc4NjA4_844fed0b-f198-43ca-818e-31c79902852a"
      unitRef="usd">-4155000</us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet>
    <us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTozYWRkNjI5MDUyNTA0ZTllYmFhYjkzY2Y2YjVlODIyZi90YWJsZXJhbmdlOjNhZGQ2MjkwNTI1MDRlOWViYWFiOTNjZjZiNWU4MjJmXzEyLTMtMS0xLTc4NjA4_cb92c0a8-e6ea-4c87-a4ee-7ce396f07470"
      unitRef="usd">-4260000</us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet>
    <us-gaap:ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMTM_417daa33-caf9-4fa0-b892-ae6c382a98fb">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts recognized in the consolidated financial statements consisted of (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.590%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.592%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued postretirement benefit liability:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;358&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long term portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,876&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pre-tax accumulated other comprehensive loss &#x2013; unamortized post-retirement healthcare costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(74)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,942)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount recognized&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,155&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,260&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzItMS0xLTEtNzg2MDg_9d5fb53c-0177-4672-b096-4104d4b488e4"
      unitRef="usd">353000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzItMy0xLTEtNzg2MDg_19188aaf-8cf7-4f09-b745-f6e2721b640f"
      unitRef="usd">358000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzMtMS0xLTEtNzg2MDg_6f3a29c4-df8d-42f0-8be1-a8a29ecfd1a5"
      unitRef="usd">3876000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzMtMy0xLTEtNzg2MDg_7cade8d6-0196-4e0e-b72f-2663dc018c4c"
      unitRef="usd">5844000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent>
    <us-gaap:DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzQtMS0xLTEtNzg2MDg_4113f3db-3094-4012-a2a2-880758749282"
      unitRef="usd">-74000</us-gaap:DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax>
    <us-gaap:DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzQtMy0xLTEtNzg2MDg_aca24189-3671-4bf9-bdcd-4838aa06ba0a"
      unitRef="usd">-1942000</us-gaap:DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax>
    <us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzUtMS0xLTEtNzg2MDg_7b64f672-8d1a-49a6-bbe1-8297bc387dcf"
      unitRef="usd">-4155000</us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet>
    <us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo3MTJmNzNhNDAzNmM0MWExYjYxOTMwYzc5ZDE2ZWUwOS90YWJsZXJhbmdlOjcxMmY3M2E0MDM2YzQxYTFiNjE5MzBjNzlkMTZlZTA5XzUtMy0xLTEtNzg2MDg_646b7912-d65c-4db5-81ac-349b5ba688e7"
      unitRef="usd">-4260000</us-gaap:DefinedBenefitPlanAmountsRecognizedInBalanceSheet>
    <us-gaap:ScheduleOfNetBenefitCostsTableTextBlock
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzMTQ_be07de8b-26a4-43b9-b796-223905d5dcf0">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of net periodic postretirement benefit cost charged to expense for the years ended December&#160;31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of unrecognized prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss amortization (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;113&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;211&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assumptions used to calculate the benefit obligation:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Annual rate of increase in the per capita cost of:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:20.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Medical costs before age 65 (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:20.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Medical costs after age 65 (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:20.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prescription drug costs (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:36pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)  For 2022, it was assumed that these rates would gradually decline to 4.0% by 2075.  For 2021 and 2020, it was assumed that these rates would gradually decline to 3.8% by 2075.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2)  Actuarial losses are amortized utilizing the corridor approach. Differences between actual experience and the actuarial assumptions are reflected in (gain)/loss. If the total net (gain) or loss exceeds 10 percent of the greater of the accumulated postretirement benefit obligation or plan assets, this excess must be amortized over the average remaining service period of the active plan participants. If most of the plan participants are inactive, the amortization period is the expected future lifetime of inactive plan participants.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfNetBenefitCostsTableTextBlock>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEtMS0xLTEtNzg2MDg_2fbc4b21-5a85-4b2a-b4ad-ddf2ba40fe7c"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEtMy0xLTEtNzg2MDg_4b2f4f85-e900-4801-9b3c-6540788ffbba"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEtNS0xLTEtNzg2MDg_276e76e9-0baa-4f71-b004-d76f61ee425b"
      unitRef="usd">10000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzItMS0xLTEtNzg2MDg_7ba6b536-f8c0-4e38-9c07-d5d91d3a666f"
      unitRef="usd">127000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzItMy0xLTEtNzg2MDg_5e01e4d3-f12b-437d-b61a-518a6b5b7f81"
      unitRef="usd">125000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzItNS0xLTEtNzg2MDg_f9e440a9-a17f-48b1-8fb6-3ae233f3cd79"
      unitRef="usd">172000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzMtMS0xLTEtNzg2MDg_2a7a0de6-eb4d-4868-adb0-e38830916668"
      unitRef="usd">60000</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzMtMy0xLTEtNzg2MDg_8a2366e6-e17f-40ae-b902-0c54afa95ca1"
      unitRef="usd">44000</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzMtNS0xLTEtNzg2MDg_b707c941-64f0-4b75-8bee-48fdbda1e336"
      unitRef="usd">44000</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzQtMS0xLTEtNzg2MDg_cc572d2a-bf96-4ecc-8d03-dd59852f15d0"
      unitRef="usd">-24000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzQtMy0xLTEtNzg2MDg_99a124b9-789b-43b5-8d64-3c573cbb46a3"
      unitRef="usd">-113000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzQtNS0xLTEtNzg2MDg_e34495fc-8a6b-4e93-8e57-2b30d1cdc281"
      unitRef="usd">-64000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzUtMS0xLTEtNzg2MDg_196f9558-aba3-4ea7-9c74-bb342aa7912c"
      unitRef="usd">211000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzUtMy0xLTEtNzg2MDg_300b78c5-ef25-4936-8b93-8c823e6fb190"
      unitRef="usd">282000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzUtNS0xLTEtNzg2MDg_32eed337-b680-4ee3-b265-9b53c4c84337"
      unitRef="usd">290000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzctMS0xLTEtNzg2MDg_14bec2ef-9c8d-4c26-a1ab-99108138cca9"
      unitRef="number">0.048</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="i9beefaf7fcfb422a8cd73addff6c93a5_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzctMy0xLTEtNzg2MDg_94192029-a088-4fa2-a802-b397d1fb29d1"
      unitRef="number">0.024</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="i3a361c2e35a94f0299b5ad792874480e_I20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzctNS0xLTEtNzg2MDg_83d6d64a-b81b-4a42-b838-0d5283fee700"
      unitRef="number">0.020</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzktMS0xLTEtNzg2MDg_84de13f7-3dad-489a-8517-7e75f73df57c"
      unitRef="number">0.078</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzktMy0xLTEtNzg2MDg_02c04d25-ee0d-4bb2-81ae-3aa6512da0d3"
      unitRef="number">0.070</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzktNS0xLTEtNzg2MDg_f828590b-d5b2-4ccf-a623-2eeec906cc70"
      unitRef="number">0.070</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEwLTEtMS0xLTc4NjA4_2391280f-1c23-45a1-82ea-4e33bbb01de6"
      unitRef="number">0.045</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEwLTMtMS0xLTc4NjA4_0eea4cff-7dd5-43af-b0c6-c3627404f93f"
      unitRef="number">0.045</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzEwLTUtMS0xLTc4NjA4_901751ad-3228-411b-810e-161fbfe3ad80"
      unitRef="number">0.045</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzExLTEtMS0xLTc4NjA4_c552d311-431b-46b5-b7e7-9ed98434734e"
      unitRef="number">0.078</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts
      contextRef="iaed019adf8fa4851b5f337954699a9a9_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzExLTMtMS0xLTc4NjA4_3f05ba1a-722d-4ea0-919c-da880d331f5e"
      unitRef="number">0.070</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts>
    <rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts
      contextRef="ied08fcbe9f5f408299c4df501298d968_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo1ZGYxOWE1OTIyNmY0MmZmYmE5YzYyNzNkZWVlM2UxZS90YWJsZXJhbmdlOjVkZjE5YTU5MjI2ZjQyZmZiYTljNjI3M2RlZWUzZTFlXzExLTUtMS0xLTc4NjA4_ee7661fd-8b14-4e80-90c0-708a9d7773e0"
      unitRef="number">0.070</rock:DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts>
    <us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzE2NDU_4cd03d41-e2d8-4406-a2b0-e5b8f5f7c181"
      unitRef="number">0.040</us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1>
    <us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzMyOTg1MzQ4ODU4NTc_076ad831-93b1-4ccc-969b-d332966e0dd6"
      unitRef="number">0.038</us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1>
    <us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzMyOTg1MzQ4ODU4NTc_6fed2984-ef95-4315-a649-1a251b33a375"
      unitRef="number">0.038</us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1>
    <us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock
      contextRef="ic5f6a19958b649389874cfee57c1f6d2_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90ZXh0cmVnaW9uOjUxYzYwMTM4MGVlYjQxYzQ5ZDNlNzM0YThlMmVlYzZiXzIzNTQ_918231bf-cf6d-49b0-a69b-f83794558207">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected benefit payments from the plan for the years ended December&#160;31 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:24.010%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.913%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.060%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.733%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years 2028 - 2032&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected benefit payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;355&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtMi0xLTEtNzg2MDg_e63ff005-a541-4db6-9c4f-c6514df7966b"
      unitRef="usd">353000000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtNC0xLTEtNzg2MDg_ac656988-6222-47a4-9cea-bab336ea10f8"
      unitRef="usd">357000000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtNi0xLTEtNzg2MDg_46e0731c-10d6-405b-97cd-a8ecef06f3a6"
      unitRef="usd">369000000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtOC0xLTEtNzg2MDg_9f770d66-a822-4d98-9536-a4172320f409"
      unitRef="usd">359000000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtMTAtMS0xLTc4NjA4_b143e47a-3c68-44b1-99a9-7da268ddf8a4"
      unitRef="usd">355000000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter
      contextRef="i2c8c739d96c6432f9839cca666e5b5e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTUvZnJhZzo1MWM2MDEzODBlZWI0MWM0OWQzZTczNGE4ZTJlZWM2Yi90YWJsZTo4ZjVhZWY0MDkyOTc0NWExYjIwNTVhZDBjNmI2NjQ4OC90YWJsZXJhbmdlOjhmNWFlZjQwOTI5NzQ1YTFiMjA1NWFkMGM2YjY2NDg4XzEtMTItMS0xLTc4NjA4_fe0c0195-3d62-499d-b090-df649da7cb9c"
      unitRef="usd">1649000000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter>
    <us-gaap:ComprehensiveIncomeNoteTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90ZXh0cmVnaW9uOjdkM2NmMmQ2ZTQxNjQ5ZWNiZWE2ODE5YWMzNDg3NjBlXzQxOQ_261140c7-190c-41e8-a4ad-c257fd64e56f">ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS)&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The cumulative balance of each component of accumulated other comprehensive income (loss) is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:36.473%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.672%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Foreign Currency Translation Adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Minimum post retirement benefit plan adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total Pre-Tax Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Tax (Benefit) Expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated Other Comprehensive Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(872)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,426)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,298)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(837)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,461)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Minimum post retirement benefit plan adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,247)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(607)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(794)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Minimum post retirement benefit plan adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;449&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,403&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,022)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,022)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,022)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,382)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(395)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,777)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(345)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,432)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The realized adjustments relating to the Company&#x2019;s minimum post retirement health care costs were reclassified from accumulated other comprehensive loss and included in other expense in the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90ZXh0cmVnaW9uOjdkM2NmMmQ2ZTQxNjQ5ZWNiZWE2ODE5YWMzNDg3NjBlXzQxMQ_38ceab3b-448a-4e94-b675-f4c1e5bb4fbc">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The cumulative balance of each component of accumulated other comprehensive income (loss) is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:36.473%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.672%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Foreign Currency Translation Adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Minimum post retirement benefit plan adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total Pre-Tax Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Tax (Benefit) Expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated Other Comprehensive Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(872)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,426)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,298)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(837)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,461)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Minimum post retirement benefit plan adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,247)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(607)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(794)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Minimum post retirement benefit plan adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;449&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,403&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,022)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,022)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,022)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,382)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(395)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,777)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(345)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,432)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="i654d7b52bf0d44dcaadd0e6141fff694_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtMS0xLTEtNzg2MDg_3b716ecd-ba22-4239-8b96-42bc9a7e0d26"
      unitRef="usd">-872000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="ic6fb3ef74a9748c9bf2a4943b8c9ce16_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtMy0xLTEtNzg2MDg_e50d6e71-77e4-42b5-a806-0672ef009832"
      unitRef="usd">-2426000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtNS0xLTEtNzg2MDg_e06c204a-aed1-4213-b47a-f37100520c9c"
      unitRef="usd">-3298000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <rock:AccumulatedOtherComprehensiveIncomeLossTax
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtNy0xLTEtNzg2MDg_4e0d66f4-3c15-4448-a473-d7637e2f6f2d"
      unitRef="usd">-837000</rock:AccumulatedOtherComprehensiveIncomeLossTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzEtOS0xLTEtNzg2MDg_037c05d7-f907-46b6-8946-4762266fe67c"
      unitRef="usd">-2461000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i52b6a2f097b04e359a67ed5126fb741d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItMy0xLTEtNzg2MDg_919f1080-1257-4677-9a59-3492bcb5704f"
      unitRef="usd">179000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i52b6a2f097b04e359a67ed5126fb741d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItNS0xLTEtNzg2MDg_5938b854-7254-4fd7-9e9e-46990a861b00"
      unitRef="usd">179000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItNy0xLTEtNzg2MDg_19fec171-71bf-4ae8-82e3-fad164e8f0d9"
      unitRef="usd">43000</us-gaap:OtherComprehensiveIncomeLossTax>
    <rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItNy0xLTEtNzg2MDg_a0643f32-75ff-494a-a96a-2ce9354af97c"
      unitRef="usd">-43000</rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzItOS0xLTEtNzg2MDg_87496bb2-2b1e-43a2-a8fc-f588fa160b0f"
      unitRef="usd">136000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtMS0xLTEtNzg2MDg_f32a42b5-f7df-4bcb-83b2-5e3452ac14bc"
      unitRef="usd">-2512000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtNS0xLTEtNzg2MDg_f0247224-4247-44cc-98e9-a9bd59702067"
      unitRef="usd">-2512000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtNy0xLTEtNzg2MDg_010033a6-a47d-4bb0-b5b9-3ba576f19b7b"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="if75c80cd188d46b681eb6be919aeb1d7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzMtOS0xLTEtNzg2MDg_fc345621-c932-4ce2-be95-a7b5abee46b3"
      unitRef="usd">-2512000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="i1db4e303323f4b4da1e32f1bd8fb3cef_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtMS0xLTEtNzg2MDg_f72f7f3b-d306-452b-96e8-ca4a4d629f58"
      unitRef="usd">1640000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="i93d83a6bef504435b7494d9cb5705de0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtMy0xLTEtNzg2MDg_fdc70f65-7dfc-47ee-933e-76696a394642"
      unitRef="usd">-2247000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtNS0xLTEtNzg2MDg_b9d4c703-2f59-4528-bb32-29f936fa06fd"
      unitRef="usd">-607000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <rock:AccumulatedOtherComprehensiveIncomeLossTax
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtNy0xLTEtNzg2MDg_f431e2ea-d00a-4139-86f2-9a4d99288317"
      unitRef="usd">-794000</rock:AccumulatedOtherComprehensiveIncomeLossTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzQtOS0xLTEtNzg2MDg_8975a487-eb9c-4dfd-9efe-d4f8c1218070"
      unitRef="usd">187000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i05311f8972a44dfaae02e04365ab7ed8_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtMy0xLTEtNzg2MDg_8dcbafcf-71d0-479f-b7da-784a98c10bf9"
      unitRef="usd">1852000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i05311f8972a44dfaae02e04365ab7ed8_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtNS0xLTEtNzg2MDg_cc2ea386-b64e-475e-ba30-2a0312f409c7"
      unitRef="usd">1852000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtNy0xLTEtNzg2MDg_09438386-7251-4533-a6cb-492561c59098"
      unitRef="usd">449000</us-gaap:OtherComprehensiveIncomeLossTax>
    <rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtNy0xLTEtNzg2MDg_95104e0b-6155-4a40-ba9c-83db25a87cdf"
      unitRef="usd">449000</rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzUtOS0xLTEtNzg2MDg_64206d11-72b7-4beb-82cb-9791bfc6862b"
      unitRef="usd">1403000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtMS0xLTEtNzg2MDg_a2c0635d-1585-496c-bef2-b727ff1ba950"
      unitRef="usd">5022000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtNS0xLTEtNzg2MDg_45461f20-953c-42b3-a976-697e4e72e6a6"
      unitRef="usd">5022000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtNy0xLTEtNzg2MDg_0dea8f7a-1c44-4bcf-9780-52ae26d181ab"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i689ea2134f1a401c92df97d3079c1385_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzYtOS0xLTEtNzg2MDg_f3b38e70-1eff-4fa7-8db4-c0ca954ec333"
      unitRef="usd">5022000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="i07485c38abca452bab5802afcd841a70_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctMS0xLTEtNzg2MDg_a36dfc09-beab-4177-a8d6-7484a99ca512"
      unitRef="usd">-3382000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="i05d994f7a8304ca09d7a49628f1e46fd_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctMy0xLTEtNzg2MDg_b4f8b485-5c76-4be6-9b55-6e83a97ebcad"
      unitRef="usd">-395000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctNS0xLTEtNzg2MDg_84ea1fc3-816a-4a74-89d1-e6e5c8f1ca45"
      unitRef="usd">-3777000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <rock:AccumulatedOtherComprehensiveIncomeLossTax
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctNy0xLTEtNzg2MDg_dd0023b6-1cb8-4d59-bac0-fa78e80e51b1"
      unitRef="usd">-345000</rock:AccumulatedOtherComprehensiveIncomeLossTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMTgvZnJhZzo3ZDNjZjJkNmU0MTY0OWVjYmVhNjgxOWFjMzQ4NzYwZS90YWJsZTo3YjZkOTJhNjg2YjA0OTgzOWVkNWUwN2JkMjg2NjJmZi90YWJsZXJhbmdlOjdiNmQ5MmE2ODZiMDQ5ODM5ZWQ1ZTA3YmQyODY2MmZmXzctOS0xLTEtNzg2MDg_0e450346-0d7a-42d0-93d3-146210f8b61b"
      unitRef="usd">-3432000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNzM_4b6d231a-656b-42ff-b341-1cfa67ce447b">EQUITY-BASED COMPENSATION&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company awards equity-based compensation to employees and directors, which is recognized in the statements of operations based on the grant-date fair value of the award. The Company uses the straight-line method for recording compensation expense over a vesting period generally up to four years with either graded or cliff vesting. Stock compensation expense recognized during the period is based on the value of the portion of equity-based awards that is ultimately expected to vest during the period reduced by the expense on unvested awards forfeited during the period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 4, 2022, the stockholders of the Company approved the adoption of the Gibraltar Industries, Inc. Amended and Restated 2016 Stock Plan for Non-Employee Directors ("Non-Employee Directors Plan") which increases the total number of shares for issuance by the Company thereunder from 100,000 shares to 200,000 shares, allows the Company to grant awards of shares of the Company's common stock to current non-employee Directors of the Company, and permits the Directors to defer receipt of such shares pursuant to the terms of the Non-Employee Directors Plan. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 4, 2018, the shareholders of the Company approved the adoption of the Gibraltar Industries, Inc. 2018 Equity Incentive Plan (the "2018 Plan"). The 2018 Plan provides for the issuance of up to 1,000,000 shares of common stock and supplements the remaining shares available for issuance under the existing Gibraltar Industries, Inc. 2015 Equity Incentive Plan (the "2015 Plan"). The Company's 2005 Equity Incentive Plan (the "Prior Plan") was amended in 2015 to terminate issuance of further awards from the Prior Plan. Both the 2018 Plan and the 2015 Plan allow the Company to grant equity-based incentive compensation awards, in the form of non-qualified options, restricted shares, restricted stock units, performance shares, performance stock units, and stock rights to eligible participants. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December&#160;31, 2022, approximately 326,000 and 80,000 shares were available for issuance under the 2018 Plan and 2015 Plan, respectively, as incentive stock options or other stock awards, and approximately 101,000 shares were available for issuance under the Non-Employee Directors Plan as awards of shares of the Company's common stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized the following compensation expense in connection with awards that vested under the 2018 Plan, the 2015 Plan, the Prior Plan, and the Non-Employee Directors Plan along with the related tax benefits recognized during the years ended December 31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.047%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the Prior Plan&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the 2015 Plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,186&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the 2018 Plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the Non-Employee Directors Plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;770&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;840&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,173&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax benefits recognized related to stock compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Equity Based Awards - Settled in Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the number of stock units and common stock granted during the years ended December&#160;31, along with the weighted-average grant-date fair value of each award:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.199%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.776%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.776%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.780%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Number&lt;br/&gt;of Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Number&lt;br/&gt;of Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Number&lt;br/&gt;of Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;42.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;7,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;83.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;45.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;42.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;83.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;45.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;132,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;43.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;72,243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;81,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;56.81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Performance stock units (1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;108,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;47.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;62,778&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;87.84&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;160,426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;55.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1) The Company&#x2019;s performance stock units (&#x201c;PSUs&#x201d;) represent shares granted for which the final number of shares earned depends on financial performance or market conditions.  The number of shares to be issued may vary between 0% and 200% of the number of PSUs granted depending on the relative achievement to targeted thresholds.  The Company's PSUs with a financial performance condition are based on either the Company&#x2019;s return on invested capital (&#x201c;ROIC&#x201d;) over a one-year period performance period or other criteria such as revenue, gross profit, and operating profit thresholds over a three-year performance period.  The Company's PSUs with a market condition are based on the ranking of the Company&#x2019;s total shareholder return (&#x201c;TSR&#x201d;) performance, on a percentile basis, over a three-year performance period compared to the S&amp;amp;P Small Cap Industrial sector, over the same three-year performance period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:12pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;No options were granted during the years ended December 31, 2022, 2021 and 2020.  The Company determines the fair value of stock options granted based on the Black-Scholes option pricing model on the date of grant, and the expected stock volatility is based on volatility of the Company&#x2019;s stock price using a historical period commensurate with the expected life of the options.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December&#160;31, 2022, the Company has one grant of options outstanding.  The following table summarizes the Company's outstanding and exercisable options at December&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.578%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.911%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.919%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Options&lt;br/&gt;Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Options&lt;br/&gt;Exercisable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$39.55&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4.26&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes information about stock option transactions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:32.478%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.955%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining Contractual&lt;br/&gt;Life (in&#160;years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Aggregate&lt;br/&gt;Intrinsic&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at January&#160;1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;117,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;19.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(75,909)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;41,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;29.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(36,500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;27.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4.26&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;31,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The aggregate intrinsic value in the preceding table represents the total pre-tax intrinsic value, based on the $45.88 per share market price of the Company&#x2019;s common stock as of December&#160;31, 2022, which would have been received by the option holder had the option holder with an exercise price below the per share market price on December&#160;31, 2022, exercised the options as of that date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock Units and Common Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes information about non-vested restricted stock units and performance stock units (that will convert to shares upon vesting) and common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.998%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Restricted&lt;br/&gt;Stock&lt;br/&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Common&lt;br/&gt;Stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Performance&lt;br/&gt;Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Deferred&lt;br/&gt;Stock&lt;br/&gt;Units (2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;204,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52.90&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;363,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55.44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;108,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Adjustments (1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(65,209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(83,714)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(15,652)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(145,153)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(14,582)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(17,930)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59.62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(50,208)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;235,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;49.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;211,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1) The Company's PSU adjustments during 2022 represents (i) 55,959 shares for which the performance condition was not achieved and the PSUs were adjusted in the first quarter of 2022 to reflect zero PSU earned as the threshold level of achievement was not met based on the Company's actual ROIC achievement level for the performance period ended December&#160;31, 2021 and (ii) 9,250 shares not earned that related to two separate PSU awards granted in 2019 and 2020 that the threshold level of achievement based on other performance criteria as defined in the respective awards over a two-year or three-year performance periods were not met for the performance periods ended December&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2) Vested and issuable upon termination from service as a member of the Company's Board of Directors.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the common stock, restricted stock units, and deferred stock units, as well as the performance stock units with a financial performance condition granted during the three years ended December&#160;31, 2022 was based on the Company stock price at grant date of the award. The fair value of the performance stock units with a market condition granted during the three years ended December&#160;31, 2022 were determined using a Monte Carlo simulation as of the grant date of the award. The Company granted performance units with a market condition during 2020; however, no such awards were granted in 2022 and 2021. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth the aggregate intrinsic value of options exercised and aggregate fair value of restricted stock units and restricted shares that vested during the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate intrinsic value of options exercised&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,812&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11,851&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested common stock&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;665&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested performance stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested deferred stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2022, there was $9.3&#160;million of total unrecognized compensation cost related to non-vested restricted and performance stock units. That cost is expected to be recognized over a weighted average period of 2.3 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Equity Based Awards - Settled in Cash&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Management Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's equity-based awards that are settled in cash are the awards under the Management Stock Purchase Plan (the "MSPP") which is authorized under the Company's equity incentive plans.  The MSPP provides participants the ability to defer a portion of their compensation, convertible to unrestricted investments, restricted stock units, or a combination of both, or defer a portion of their directors&#x2019; fees, convertible to restricted stock units. Employees eligible to defer a portion of their compensation also receive a company-matching award in restricted stock units equal to a percentage of their deferred compensation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The deferrals and related company match are credited to an account that represents a share-based liability.  The portion of the account deferred to unrestricted investments is measured at fair market value of the unrestricted investments, and the portion of the account deferred to restricted stock units and company-matching restricted stock units is measured at a 200-day average of the Company stock price.  The account will be converted to and settled in cash payable to participants upon retirement or a termination of their service to the Company.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total MSPP liabilities recorded on the consolidated balance sheet as of December&#160;31, 2022 were $15.4 million, of which $2.3 million was included in current accrued expenses and $13.1 million was included in non-current liabilities.  Total MSPP liabilities recorded on the consolidated balance sheet as of December&#160;31, 2021 were $22.6 million, of which $2.9&#160;million was included in current accrued expenses and $19.7 million was included in non-current liabilities.  The value of the restricted stock units within the MSPP liability were $13.4&#160;million and $20.7&#160;million at December&#160;31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the number of restricted stock units credited to active participant accounts, balance of vested and unvested restricted stock units within active participant accounts, payments made with respect to restricted stock units issued under the MSPP, and MSPP expense during years ended December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock units credited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,475&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock units balance, vested and unvested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;158,644&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;231,343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share-based liabilities paid (in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;MSPP (recovery) expense (in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,459)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyNQ_8dfb563b-1cc5-4956-9dc3-27a510473abb">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i9dc15d7b762f4f8786fc2f0819ef131a_I20220503"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTMwMzU_4ca23889-3296-49b6-81d0-fd56ce7d5fb8"
      unitRef="shares">100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="if70f323d342048b0aff53344ac311523_I20220504"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTMwNDQ_2213beb3-21ff-445c-a47a-afc68f014092"
      unitRef="shares">200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i35da7e2535974c3f985d4aa66244b262_I20180504"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgwNw_101ce3e0-0ddc-4b05-9ab5-70a88d8ba0dc"
      unitRef="shares">1000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i333f727333a74cf8835cfdc0d0bf40da_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzE4Mzc_8954f9a0-1cb2-49ac-ad8d-d8083c0bf1dc"
      unitRef="shares">326000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i37da9a71b45e47bda80c54f802690cb3_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzE4NDQ_9deef369-e8a6-41a2-8331-9478e7c39373"
      unitRef="shares">80000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="ife54428f5bae415a958afbba89deb379_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzE5OTk_c5923555-c136-4948-aa20-2a220650852d"
      unitRef="shares">101000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNzU_7466ac7b-2a04-4508-a487-395e850ea6d2">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized the following compensation expense in connection with awards that vested under the 2018 Plan, the 2015 Plan, the Prior Plan, and the Non-Employee Directors Plan along with the related tax benefits recognized during the years ended December 31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.047%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the Prior Plan&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the 2015 Plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,186&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the 2018 Plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense recognized under the Non-Employee Directors Plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;770&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;840&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,173&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax benefits recognized related to stock compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock>
    <rock:StockCompensationExpenseRecognizedUnderTerminatedPlans
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzEtMS0xLTEtNzg2MDg_69c75c4f-9864-4704-a58f-60ef1c289193"
      unitRef="usd">19000</rock:StockCompensationExpenseRecognizedUnderTerminatedPlans>
    <rock:StockCompensationExpenseRecognizedUnderTerminatedPlans
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzEtMy0xLTEtNzg2MDg_ae69d43d-9c85-480d-8933-db7a45523bda"
      unitRef="usd">29000</rock:StockCompensationExpenseRecognizedUnderTerminatedPlans>
    <rock:StockCompensationExpenseRecognizedUnderTerminatedPlans
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzEtNS0xLTEtNzg2MDg_da8a01b8-f749-4b05-a30f-fb07431a3830"
      unitRef="usd">40000</rock:StockCompensationExpenseRecognizedUnderTerminatedPlans>
    <rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan
      contextRef="if3b28f29f8654fb38644d2e8f5a6c7bb_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzItMS0xLTEtNzg2MDg_896f63ca-f2fe-413c-a824-86243aa13a37"
      unitRef="usd">1617000</rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan>
    <rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan
      contextRef="i521f14e0f444475cba6d0358136ce841_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzItMy0xLTEtNzg2MDg_027603d1-a2b9-4d68-98b5-8185e2f74040"
      unitRef="usd">1186000</rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan>
    <rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan
      contextRef="iaf596457fd2842ff8d756f74b142b118_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzItNS0xLTEtNzg2MDg_6afe2bd7-2098-41d6-8c25-534840f0ba3e"
      unitRef="usd">1932000</rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan>
    <rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan
      contextRef="i87a3975702e24b0a8e506f6418b4d8e5_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzMtMS0xLTEtNzg2MDg_2df244d6-ef46-4a8b-b142-1b62525eeb96"
      unitRef="usd">5928000</rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan>
    <rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan
      contextRef="i7ca3a95410fc4aadbabbe31d8a1fb927_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzMtMy0xLTEtNzg2MDg_c054ef1c-4e53-4693-b1be-99082da1a646"
      unitRef="usd">6597000</rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan>
    <rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan
      contextRef="i12732f10c82a4193ae08cd52a26c3ea5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzMtNS0xLTEtNzg2MDg_127c4ab1-bf4e-4a6e-9fc3-aa52e0d82cdb"
      unitRef="usd">5441000</rock:StockCompensationExpenseRecognizedUnderEquityIncentivePlan>
    <rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzQtMS0xLTEtNzg2MDg_18b8ff0c-9c57-4c32-a184-38298f69dbe4"
      unitRef="usd">770000</rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation>
    <rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzQtMy0xLTEtNzg2MDg_873f84d6-e07b-4112-aaa5-891067f31184"
      unitRef="usd">840000</rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation>
    <rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzQtNS0xLTEtNzg2MDg_ec262264-f500-43eb-a389-28d114d1fa03"
      unitRef="usd">760000</rock:ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzUtMS0xLTEtNzg2MDg_a3e2277c-f4e7-47b3-9507-0fcc9e7819e8"
      unitRef="usd">8334000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzUtMy0xLTEtNzg2MDg_a1ecbde3-00c0-4dfd-9310-b8e89257639e"
      unitRef="usd">8652000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzUtNS0xLTEtNzg2MDg_ec5cb6f1-0c01-4d35-b925-9afbab24b2b8"
      unitRef="usd">8173000</us-gaap:ShareBasedCompensation>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzYtMS0xLTEtNzg2MDg_b349cb12-676e-43dc-8770-283e124262b1"
      unitRef="usd">2175000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzYtMy0xLTEtNzg2MDg_f0d9095d-52a0-4e4f-97c5-e3ae337d5b7b"
      unitRef="usd">2189000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTo1MjFjZDU3OWRlYWM0YTcwODdjZjRhOGIyN2Q3MTdmYi90YWJsZXJhbmdlOjUyMWNkNTc5ZGVhYzRhNzA4N2NmNGE4YjI3ZDcxN2ZiXzYtNS0xLTEtNzg2MDg_1e96bae5-5e98-4023-ab57-745693da9c59"
      unitRef="usd">2272000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNTA_e8a5b409-0f30-4b7f-b948-c7854a96af04">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the number of stock units and common stock granted during the years ended December&#160;31, along with the weighted-average grant-date fair value of each award:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.199%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.776%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.776%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.780%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Number&lt;br/&gt;of Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Number&lt;br/&gt;of Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Number&lt;br/&gt;of Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;42.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;7,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;83.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;45.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;42.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;83.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;45.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;132,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;43.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;72,243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;81,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;56.81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Performance stock units (1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;108,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;47.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;62,778&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;87.84&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;160,426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;55.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1) The Company&#x2019;s performance stock units (&#x201c;PSUs&#x201d;) represent shares granted for which the final number of shares earned depends on financial performance or market conditions.  The number of shares to be issued may vary between 0% and 200% of the number of PSUs granted depending on the relative achievement to targeted thresholds.  The Company's PSUs with a financial performance condition are based on either the Company&#x2019;s return on invested capital (&#x201c;ROIC&#x201d;) over a one-year period performance period or other criteria such as revenue, gross profit, and operating profit thresholds over a three-year performance period.  The Company's PSUs with a market condition are based on the ranking of the Company&#x2019;s total shareholder return (&#x201c;TSR&#x201d;) performance, on a percentile basis, over a three-year performance period compared to the S&amp;amp;P Small Cap Industrial sector, over the same three-year performance period.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ib9cc28d5b75e49d5b3ae72b6c80a4ee8_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtMS0xLTEtNzg2MDg_0dccfbc1-ad06-4842-9d42-525654d62118"
      unitRef="shares">2460</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ib9cc28d5b75e49d5b3ae72b6c80a4ee8_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtMy0xLTEtNzg2MDg_609572c9-d723-44d7-8847-4a3c4ece6c70"
      unitRef="usdPerShare">42.69</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ie72e3ce0a04b4a80a0eb5f9927d670b9_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtNS0xLTEtNzg2MDg_85f0dd6a-e992-4ebc-b9d8-c75c5cda5d73"
      unitRef="shares">7536</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ie72e3ce0a04b4a80a0eb5f9927d670b9_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtNy0xLTEtNzg2MDg_7bc85410-8914-4b84-9da3-7832374a3959"
      unitRef="usdPerShare">83.58</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i618d03ede4c34f7b8d844297505d0164_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtOS0xLTEtNzg2MDg_89d2d117-7aee-4db2-8ec5-8db2de1e1bbd"
      unitRef="shares">12402</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i618d03ede4c34f7b8d844297505d0164_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzQtMTEtMS0xLTc4NjA4_7495edd0-e9ed-4793-9278-efc288fda21b"
      unitRef="usdPerShare">45.98</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ief83552b648c4de7913784604ee97941_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtMS0xLTEtNzg2MDg_6ebe628a-37f0-404a-b65f-89ee43f42877"
      unitRef="shares">15652</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ief83552b648c4de7913784604ee97941_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtMy0xLTEtNzg2MDg_129f314f-3f15-43c0-97bf-51a29cc4e35d"
      unitRef="usdPerShare">42.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="iae23fedcddf44d979e42f2c38a732827_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtNS0xLTEtNzg2MDg_41d94132-0432-454d-a328-7ff33e6fa658"
      unitRef="shares">2512</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="iae23fedcddf44d979e42f2c38a732827_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtNy0xLTEtNzg2MDg_e87f195c-02fe-462f-9f6a-557d67e16e48"
      unitRef="usdPerShare">83.58</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="if43a4604c74848759a8bbab4e6a81aa6_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtOS0xLTEtNzg2MDg_f70543fd-0d6b-4d88-b5a8-48705df2e027"
      unitRef="shares">4134</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="if43a4604c74848759a8bbab4e6a81aa6_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzUtMTEtMS0xLTc4NjA4_b330cc88-9f70-4204-95b7-17d39af2e6c7"
      unitRef="usdPerShare">45.98</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i1c774c478e0844d99442be11dc41033e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtMS0xLTEtNzg2MDg_fba6e445-bebd-4436-9c0d-f2d7a3ea93d7"
      unitRef="shares">132430</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i1c774c478e0844d99442be11dc41033e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtMy0xLTEtNzg2MDg_267e6631-5393-415f-91a6-c01786a59b92"
      unitRef="usdPerShare">43.92</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i4827d903d760472d9a8e5693de24307a_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtNS0xLTEtNzg2MDg_ff5c4485-d983-4779-9f14-be755a90f3f8"
      unitRef="shares">72243</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i4827d903d760472d9a8e5693de24307a_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtNy0xLTEtNzg2MDg_797c7264-19be-4097-ae28-140fc61a8c52"
      unitRef="usdPerShare">79.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i545d62b1a6f547d9ae836c5783f14e37_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtOS0xLTEtNzg2MDg_9677008b-26a4-484e-b84e-71f67069e8fe"
      unitRef="shares">81397</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i545d62b1a6f547d9ae836c5783f14e37_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzYtMTEtMS0xLTc4NjA4_ee7abdab-3fec-4803-883e-e921664595ec"
      unitRef="usdPerShare">56.81</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i8a478ce43a4d4484bef17790c569a64a_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctMS0xLTEtNzg2MDg_6c1f0810-71e7-4dea-a04a-b62b04fb8484"
      unitRef="shares">108464</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8a478ce43a4d4484bef17790c569a64a_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctMy0xLTEtNzg2MDg_661e9ef5-36a3-4663-b40f-01bfefdbc0a8"
      unitRef="usdPerShare">47.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i77e53b35d6674f12acacf8f09c3e49fd_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctNS0xLTEtNzg2MDg_81aa0596-c3b7-4af0-92c8-69d1bf1165a5"
      unitRef="shares">62778</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i77e53b35d6674f12acacf8f09c3e49fd_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctNy0xLTEtNzg2MDg_d31c9260-943a-4f79-8952-a90b0bf1f597"
      unitRef="usdPerShare">87.84</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i3f01140fea6242ef9ade3e1ae480373d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctOS0xLTEtNzg2MDg_8483ccd4-0c7f-4885-a552-2e6ce2278970"
      unitRef="shares">160426</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i3f01140fea6242ef9ade3e1ae480373d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTplNjhkYjQ5MWM3MmE0MzMwYTA0YTNjYzhjZTI1YTM2Yi90YWJsZXJhbmdlOmU2OGRiNDkxYzcyYTQzMzBhMDRhM2NjOGNlMjVhMzZiXzctMTEtMS0xLTc4NjA4_81d1f70f-971d-45a6-bf7d-03778d8065ee"
      unitRef="usdPerShare">55.98</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent
      contextRef="i9c74c9e35f984b23a6aa3697439dec2f_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ5MDE0Njg_c6a10f30-acdf-471d-84e7-44056121ad00"
      unitRef="number">0</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent
      contextRef="i9f0fdc742d974a3a9e7921bd12764d57_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ5MDE0NjI_00987231-3ce0-4e66-aa94-e00a5b5d7090"
      unitRef="number">2</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod
      contextRef="id66b4e03f0e44ce19383390bbf30f112_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3MzM_b92dff21-dbb2-41dd-baf6-04228905f348">P1Y</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod
      contextRef="iaf396751c7114ec9b112601dabb39141_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3NDk_5a4cc1c5-26f1-4e8d-ba90-8479d0bd21a9">P3Y</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod
      contextRef="i6054511fdfeb4e00946479079f027f16_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3NzY_115d33dd-1473-42eb-8593-5bd4ec6c87a2">P3Y</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod
      contextRef="i6054511fdfeb4e00946479079f027f16_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3Nzc_ba79274e-4db3-4fdd-b158-50e0be8d764b">P3Y</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzI2NTQ_2d0b56eb-e809-49f5-8e70-14c7c6935835"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzI2NTQ_961fe677-069c-4d79-9bc2-f07fc2c88173"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzI2NTQ_bb9ecbee-ec14-4653-b051-49866f3fc552"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNDQ_7ca47f51-34e7-4443-ac09-e78e6661e407">The following table summarizes the Company's outstanding and exercisable options at December&#160;31, 2022:&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.578%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.911%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.919%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Options&lt;br/&gt;Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Options&lt;br/&gt;Exercisable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$39.55&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4.26&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtMC0xLTEtNzg2MDgvdGV4dHJlZ2lvbjpmZmMyOTdhMDYyZjA0ZmU3OTFmNGI2ZGI1M2E2NDY5Ml80_9813988c-c4a2-4caf-91a5-2ec39e4dab19"
      unitRef="usdPerShare">39.55</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i30eeb572360a444687cf4f1786455f4d_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtMi0xLTEtNzg2MDg_67961d4d-888d-4667-8c7d-e9222af3e7de"
      unitRef="shares">5000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtNC0xLTEtNzg2MDg_1dda88e1-4250-4c0f-940f-5dc85b337d29">P4Y3M3D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i5fb5288d39974650b9d1670282fee62a_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtNi0xLTEtNzg2MDg_50bd7386-7ffd-4f63-a9ae-a5137bd9712e"
      unitRef="usdPerShare">39.55</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i30eeb572360a444687cf4f1786455f4d_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtOC0xLTEtNzg2MDg_1225c110-458e-434a-b4b5-6c9b9d95e9d0"
      unitRef="shares">5000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i30eeb572360a444687cf4f1786455f4d_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTpkZjQ0NWIzOGFiMDY0NzJlYjNhMTkwNGY3M2I0YmU3ZC90YWJsZXJhbmdlOmRmNDQ1YjM4YWIwNjQ3MmViM2ExOTA0ZjczYjRiZTdkXzMtMTAtMS0xLTc4NjA4_1a0b4cf4-a8ba-4d31-bf06-76652f48db23"
      unitRef="usdPerShare">39.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxODM_7291b39e-b213-4590-bde9-8d08bcd529b0">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes information about stock option transactions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:32.478%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.955%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining Contractual&lt;br/&gt;Life (in&#160;years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%"&gt;Aggregate&lt;br/&gt;Intrinsic&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at January&#160;1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;117,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;19.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(75,909)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;41,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;29.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(36,500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;27.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;39.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4.26&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;31,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEtMS0xLTEtNzg2MDg_693f71ae-6311-4780-9df0-60d41e937ddc"
      unitRef="shares">117409</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i04984d64226f4fdf86917c2cc9b4a1d8_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEtMy0xLTEtNzg2MDg_48737a15-12cb-4bad-8ced-97e088bc3f2b"
      unitRef="usdPerShare">19.91</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzMtMS0xLTEtNzg2MDg_9b18d1cf-a1c7-4b96-8bed-ca73b2de1e57"
      unitRef="shares">75909</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzMtMy0xLTEtNzg2MDg_76a6dc72-b71e-457e-9d5b-163243488d18"
      unitRef="usdPerShare">14.73</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzUtMS0xLTEtNzg2MDg_3b9e0803-5556-4655-9187-73b577ada8a6"
      unitRef="shares">41500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzUtMy0xLTEtNzg2MDg_bb2fc9c7-71c8-4bf4-80b4-ddebe266a8f6"
      unitRef="usdPerShare">29.38</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzgtMS0xLTEtNzg2MDg_b84b47f8-6666-4cf5-8db5-fc9eee70607f"
      unitRef="shares">36500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzgtMy0xLTEtNzg2MDg_f7aec0e8-0036-4aed-a3a2-c261ef597b6d"
      unitRef="usdPerShare">27.99</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzktMS0xLTEtNzg2MDg_dd3a9d8b-b69a-47da-8998-2920c81fde8d"
      unitRef="shares">5000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzktMy0xLTEtNzg2MDg_a168a45f-021a-4b05-90ef-4c26395c8c13"
      unitRef="usdPerShare">39.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEwLTEtMS0xLTc4NjA4_1f17309d-5dbf-4243-9d72-54786756e944"
      unitRef="shares">0</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzEwLTMtMS0xLTc4NjA4_62d60883-d908-441a-95c3-d4f40cfb8c14"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTEtMS0xLTc4NjA4_12dced3b-8402-4d8d-a319-4e3c4c0c6939"
      unitRef="shares">5000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTMtMS0xLTc4NjA4_cbd517a4-92d7-41e1-860a-c315ff142062"
      unitRef="usdPerShare">39.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTUtMS0xLTc4NjA4_9106b2a2-d658-4824-829d-85ddd5821af5">P4Y3M3D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToyMTY3ZTA5MGJlMWY0Yzc3ODY5OWEzNjcxNzE5MTk5Zi90YWJsZXJhbmdlOjIxNjdlMDkwYmUxZjRjNzc4Njk5YTM2NzE3MTkxOTlmXzExLTctMS0xLTc4NjA4_2527b689-0de1-4339-875f-7e7ba26754aa"
      unitRef="usd">31650000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <rock:MarketPriceOfCommonStockPerShare
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyODI_0ed772e6-063c-43b6-8913-790cc2326d4c"
      unitRef="usdPerShare">45.88</rock:MarketPriceOfCommonStockPerShare>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNTg_53673593-05a0-4255-a1d2-f933929c4df5">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes information about non-vested restricted stock units and performance stock units (that will convert to shares upon vesting) and common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.998%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Restricted&lt;br/&gt;Stock&lt;br/&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Common&lt;br/&gt;Stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Performance&lt;br/&gt;Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Deferred&lt;br/&gt;Stock&lt;br/&gt;Units (2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&#160;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;204,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52.90&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;363,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55.44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;108,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Adjustments (1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(65,209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(83,714)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(15,652)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(145,153)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(14,582)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(17,930)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59.62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(50,208)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;235,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;49.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;211,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1) The Company's PSU adjustments during 2022 represents (i) 55,959 shares for which the performance condition was not achieved and the PSUs were adjusted in the first quarter of 2022 to reflect zero PSU earned as the threshold level of achievement was not met based on the Company's actual ROIC achievement level for the performance period ended December&#160;31, 2021 and (ii) 9,250 shares not earned that related to two separate PSU awards granted in 2019 and 2020 that the threshold level of achievement based on other performance criteria as defined in the respective awards over a two-year or three-year performance periods were not met for the performance periods ended December&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2) Vested and issuable upon termination from service as a member of the Company's Board of Directors.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMS0xLTEtNzg2MDg_f0c2f5be-e684-47ed-a26b-8f987fd022b4"
      unitRef="shares">204584</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMy0xLTEtNzg2MDg_1bdcf5b6-0da3-49d3-bd26-2723c2a3090e"
      unitRef="usdPerShare">52.90</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i38cae17618c143df862f8800ca9a3a77_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtNS0xLTEtNzg2MDg_93712b25-a719-4ae3-9d41-3d4a164263a8"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i38cae17618c143df862f8800ca9a3a77_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtNy0xLTEtNzg2MDg_244398a5-8266-4515-b9e2-df89a7be9e87"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i5231405b5fc7416abb675f49efbb9975_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtOS0xLTEtNzg2MDg_64718f54-b067-4c58-b537-5c3ef46e6750"
      unitRef="shares">363474</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i5231405b5fc7416abb675f49efbb9975_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMTEtMS0xLTc4NjA4_3bc4d017-751f-4258-89c0-18619ec44598"
      unitRef="usdPerShare">55.44</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i0ad65e0eabf24a249dfefb2d94919c27_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMTMtMS0xLTc4NjA4_2720d5d7-4948-4422-ba34-ee9cc4433abe"
      unitRef="shares">52472</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i0ad65e0eabf24a249dfefb2d94919c27_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzEtMTUtMS0xLTc4NjA4_c6d85bf7-3378-44c6-9292-5f87e5655cdb"
      unitRef="usdPerShare">43.99</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMS0xLTEtNzg2MDg_71a62713-5285-4616-b2ea-c0cf351cb156"
      unitRef="shares">132430</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMy0xLTEtNzg2MDg_db72935b-c01e-41f8-99e8-8a6147bbceee"
      unitRef="usdPerShare">43.92</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItNS0xLTEtNzg2MDg_f5edce2b-3f8f-4dfa-adbb-5710f9e551a1"
      unitRef="shares">15652</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItNy0xLTEtNzg2MDg_acc3d65f-ae2c-4aac-8be0-a64c274792ba"
      unitRef="usdPerShare">42.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItOS0xLTEtNzg2MDg_55647461-142f-4499-ac5a-cdcc34e6eaf3"
      unitRef="shares">108464</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMTEtMS0xLTc4NjA4_507c8f71-eccb-49b1-9862-903f790a113d"
      unitRef="usdPerShare">47.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMTMtMS0xLTc4NjA4_1434b25b-eb38-42b5-afd2-d89343198612"
      unitRef="shares">2460</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzItMTUtMS0xLTc4NjA4_da04e7b8-3190-4ea2-940d-07406152c18f"
      unitRef="usdPerShare">42.69</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMS0xLTEtNzg2MDg_38ca8cb0-2320-43e0-a29c-81d4e3906923"
      unitRef="shares">0</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMy0xLTEtNzg2MDg_dbff5c0d-05a7-4be1-8871-d1c622fb6609"
      unitRef="usdPerShare">0</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtNS0xLTEtNzg2MDg_7a01038c-de17-4faf-bbd9-1db1b536f958"
      unitRef="shares">0</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtNy0xLTEtNzg2MDg_a61da0e7-5586-4595-adef-f03ece4bbb5c"
      unitRef="usdPerShare">0</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtOS0xLTEtNzg2MDg_ca48a2b1-4875-49f4-b7a7-86da66be9902"
      unitRef="shares">-65209</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMTEtMS0xLTc4NjA4_f1b16784-c0ad-4c90-a17f-283827c4edb9"
      unitRef="usdPerShare">82.75</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMTMtMS0xLTc4NjA4_2d548c96-731e-4439-89b9-49c86372945e"
      unitRef="shares">0</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzMtMTUtMS0xLTc4NjA4_85a63870-639b-400f-8981-3d042e243f93"
      unitRef="usdPerShare">0</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMS0xLTEtNzg2MDg_50480738-b870-4e6f-bb53-e82a6bec5163"
      unitRef="shares">83714</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMy0xLTEtNzg2MDg_29bfff5d-c103-4075-8588-2fcbb95beeec"
      unitRef="usdPerShare">45.77</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtNS0xLTEtNzg2MDg_0b9f0c14-32df-4974-a932-e395cfd535e8"
      unitRef="shares">15652</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtNy0xLTEtNzg2MDg_eeb75874-e42f-44df-aa57-5ac1ad8fe9c4"
      unitRef="usdPerShare">42.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtOS0xLTEtNzg2MDg_35d55a6a-b1c3-4aa3-a0e7-69d1d7d07172"
      unitRef="shares">145153</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMTEtMS0xLTc4NjA4_590a3904-2f57-4e83-82de-4bf077b12c6f"
      unitRef="usdPerShare">41.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMTMtMS0xLTc4NjA4_2a9b00d1-9de8-4a43-8fa2-aae3b5360e87"
      unitRef="shares">14582</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzQtMTUtMS0xLTc4NjA4_73de5eed-44ab-4b34-abcb-80325bc02153"
      unitRef="usdPerShare">40.53</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMS0xLTEtNzg2MDg_fcdfe210-fc82-40c8-b71c-4866fbe62783"
      unitRef="shares">17930</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMy0xLTEtNzg2MDg_a8d22440-79d1-451e-ac95-adc3a2a49d02"
      unitRef="usdPerShare">59.62</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtNS0xLTEtNzg2MDg_5f153988-1ff9-4a7a-b9d2-87726be139b4"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtNy0xLTEtNzg2MDg_abde98ca-0156-48a5-a679-28ce66f1112e"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtOS0xLTEtNzg2MDg_608a854d-0556-474a-8859-e8aaa7e5c373"
      unitRef="shares">50208</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i315cd57c109943679521192035347e33_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMTEtMS0xLTc4NjA4_d6321a92-9628-4959-bdb1-46e6c2942edb"
      unitRef="usdPerShare">61.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMTMtMS0xLTc4NjA4_310169f5-1f3b-4575-96af-60bb8b863c5c"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzUtMTUtMS0xLTc4NjA4_9d051059-bbd2-4924-b9b8-d36f4be676d7"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMS0xLTEtNzg2MDg_fedad4e4-84f1-4a69-a6b7-eab09ebe2a84"
      unitRef="shares">235370</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMy0xLTEtNzg2MDg_1a6ea790-01be-4788-97b9-ddcfd603ce1b"
      unitRef="usdPerShare">49.87</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i42cbdaa65de645b6b771deddf4f01f16_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtNS0xLTEtNzg2MDg_ba343e70-8010-4f71-9c3c-8aaaa1616a1c"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i42cbdaa65de645b6b771deddf4f01f16_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtNy0xLTEtNzg2MDg_e721dd03-138d-4c96-88b1-d48f43df62cd"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i90db669524424d7a93e78e1228bd42ad_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtOS0xLTEtNzg2MDg_7939689f-70aa-476c-bb0b-18cf01de4b2b"
      unitRef="shares">211368</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i90db669524424d7a93e78e1228bd42ad_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMTEtMS0xLTc4NjA4_a289e4f8-9dc0-4ace-9158-17756e552459"
      unitRef="usdPerShare">50.96</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i60bd80b6b9a34d888f8c614f80a652f4_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMTMtMS0xLTc4NjA4_8c4406d1-80ca-409e-8d12-f5b5aaaf923b"
      unitRef="shares">40350</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i60bd80b6b9a34d888f8c614f80a652f4_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozNGM5MzEzMGRiNjA0Nzc3ODMyZGU4NTgwYTMwNjgzMy90YWJsZXJhbmdlOjM0YzkzMTMwZGI2MDQ3Nzc4MzJkZTg1ODBhMzA2ODMzXzYtMTUtMS0xLTc4NjA4_fa915580-4e1a-4e62-acd8-6b7ce18dc8c6"
      unitRef="usdPerShare">45.16</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3ODY_85334a4c-9ca3-4c33-81fa-1d544a23e940"
      unitRef="shares">55959</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved>
    <rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc3Nzk_0dc5ec47-2d25-457a-b24f-7cc6ba0b5c33"
      unitRef="shares">9250</rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod
      contextRef="i9ddd417da4ce430b8ed75fa12a9900d9_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc4Mjc_8623876c-d801-4624-bb7f-9d3e663e11c6">P2Y</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod>
    <rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod
      contextRef="i7d334fc11e7344ca8b41f2f79f4aaf39_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc4Mjg_5e2630a9-d487-4f25-b198-156b129d08ce">P3Y</rock:SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i3c866d4a56934156867914a30d42747f_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzU4MTI_38ca2399-da77-4265-99b6-afb5770f6c4e"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i9ec69f2a2f3d4689b1f34eddbae63b31_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzU4MTI_977c366e-2f47-44df-bb16-b559b51f8678"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <rock:ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNTM_4c1989cc-5928-4357-93c4-391cf58846d2">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth the aggregate intrinsic value of options exercised and aggregate fair value of restricted stock units and restricted shares that vested during the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate intrinsic value of options exercised&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,812&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11,851&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested common stock&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;665&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested performance stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Aggregate fair value of vested deferred stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzEtMS0xLTEtNzg2MDg_6e2ca20c-735b-4949-957d-3cc5c2da91f5"
      unitRef="usd">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzEtMy0xLTEtNzg2MDg_a665e446-5566-415c-9c26-b7ca79bf9836"
      unitRef="usd">2103000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzEtNS0xLTEtNzg2MDg_c898e2f3-8bec-430d-8e4b-8b48193acd27"
      unitRef="usd">3812000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzItMS0xLTEtNzg2MDg_f8ddd4a0-c0b4-43db-8d38-4551790c858c"
      unitRef="usd">3920000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i9ea0ebadd87a4b54bda9ceb4768018cf_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzItMy0xLTEtNzg2MDg_963ef168-8c0b-44f8-902b-0d0d04368a35"
      unitRef="usd">6320000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ia734b50389e0476cb94df62ddbd4f9d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzItNS0xLTEtNzg2MDg_557e6a85-d92b-4e10-94d3-3ea05ab4d5e6"
      unitRef="usd">11851000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i986ac747424845d489807f6438b4665b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzMtMS0xLTEtNzg2MDg_c7776aa8-69f4-4aa6-ba95-6611de1ec300"
      unitRef="usd">665000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="icb1fe569d47f4fbbb55606ef73735d8f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzMtMy0xLTEtNzg2MDg_7cb3a41e-4a46-4c3b-80af-bd413819c0d9"
      unitRef="usd">370000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i4c5101685f264c21b84bba3b53c5b581_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzMtNS0xLTEtNzg2MDg_5c519f97-a9e4-42a9-9d4f-4d093eb868dd"
      unitRef="usd">190000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i67d73249f83a4f98ad9a4458048dbafc_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMS0xLTEtOTI0MTQ_23677b37-bc02-4abe-b8a9-760686d6706a"
      unitRef="usd">6729000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i2e1e472787084d00b78ff903e7523e71_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMy0xLTEtOTI0MTQ_b7c30fff-e72a-43fc-a79c-00bae1b085af"
      unitRef="usd">9080000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ic7671d74549b483f869621f804a9bf70_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtNS0xLTEtOTI0MTQ_79cf627b-e039-4604-baa9-d345f704a26a"
      unitRef="usd">4197000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMS0xLTEtNzg2MDg_6100f7b4-3805-42c1-b8fb-495a26642d19"
      unitRef="usd">105000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="iae02fc9e4ad64cfba5c29bd54552416e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtMy0xLTEtNzg2MDg_21a7b736-93bc-41f0-8039-2333d8a3b103"
      unitRef="usd">630000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ied78e4545b8d433e853fcab799ed452d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZToxZWIzOGQ2ZjA1ZGY0Mzc2OTI5NWEyOWEwN2FkMDk3MC90YWJsZXJhbmdlOjFlYjM4ZDZmMDVkZjQzNzY5Mjk1YTI5YTA3YWQwOTcwXzQtNS0xLTEtNzg2MDg_f47b3844-29f3-4429-bcdd-bcc5844536a3"
      unitRef="usd">570000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU5MzY_abfe47ed-049b-4558-b896-21de65838d84"
      unitRef="usd">9300000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzYyODU_60ea70fc-7130-4272-b7af-6193ee1e0fa4">P2Y3M18D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <rock:SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod
      contextRef="i2b2e20c0caef44a882bfef5d6d426ccc_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzIxOTkwMjMyNzc4Mzk_1efec76f-8665-410c-b438-eb07674d2530">P200D</rock:SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod>
    <rock:AccruedEquityBasedCompensation
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY2MDY_54ffd373-1c2a-437c-b652-945c05764258"
      unitRef="usd">15400000</rock:AccruedEquityBasedCompensation>
    <rock:AccruedEquityBasedCompensation
      contextRef="ifa220c5a25d849c99605773d3cf52640_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY2MTk_29b1eb61-3239-4212-9e43-31fce19bbd88"
      unitRef="usd">2300000</rock:AccruedEquityBasedCompensation>
    <rock:AccruedEquityBasedCompensation
      contextRef="i4ddfeed1ae2842c68338f7d3a752ba37_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY2Njc_b809bed7-d8a0-45de-bdac-0975d473ade2"
      unitRef="usd">13100000</rock:AccruedEquityBasedCompensation>
    <rock:AccruedEquityBasedCompensation
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY3NTY_555603ec-e9d9-4ce4-9bd0-30325bcf3a05"
      unitRef="usd">22600000</rock:AccruedEquityBasedCompensation>
    <rock:AccruedEquityBasedCompensation
      contextRef="ic2f756bfa65a4c979874c5ef250317a0_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU2NzI_edaff17e-6aa9-432b-9e5c-71d3ee1260cd"
      unitRef="usd">2900000</rock:AccruedEquityBasedCompensation>
    <rock:AccruedEquityBasedCompensation
      contextRef="i6dae7c6bf20a4152ac70cef8f60f448d_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzY3Njk_7e13c6db-426f-4993-a5bd-4d7a1db0cef2"
      unitRef="usd">19700000</rock:AccruedEquityBasedCompensation>
    <rock:AccruedEquityBasedCompensation
      contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU5MTE_b9b85f4f-f012-4faf-bbeb-f9c0bc3ae965"
      unitRef="usd">13400000</rock:AccruedEquityBasedCompensation>
    <rock:AccruedEquityBasedCompensation
      contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzMyOTg1MzQ4OTU4OTA_8e03453f-f651-4803-987e-0da553e42f0a"
      unitRef="usd">20700000</rock:AccruedEquityBasedCompensation>
    <rock:CashPaidToSettleLiabilityAwardsTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90ZXh0cmVnaW9uOjk5MzE0ODc0ZGVmYzRkN2Y4NDQ1ZGIzYzgxNTJjYzVhXzgxNDI_c636b32b-4a55-4230-8a47-2cae64d3eae4">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the number of restricted stock units credited to active participant accounts, balance of vested and unvested restricted stock units within active participant accounts, payments made with respect to restricted stock units issued under the MSPP, and MSPP expense during years ended December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock units credited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,475&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock units balance, vested and unvested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;158,644&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;231,343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share-based liabilities paid (in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;MSPP (recovery) expense (in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,459)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:CashPaidToSettleLiabilityAwardsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="id5a396136f6749ac889564510e4cafe9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzEtMS0xLTEtNzg2MDg_b854c0c9-fbb5-4fe1-8810-7bac425b90d3"
      unitRef="shares">12365000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="i9ea0ebadd87a4b54bda9ceb4768018cf_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzEtMy0xLTEtNzg2MDg_23405687-7002-48d2-b781-491f56e5bdfa"
      unitRef="shares">30475000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="ia734b50389e0476cb94df62ddbd4f9d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzEtNS0xLTEtNzg2MDg_ed94501c-d915-4bcc-9465-e44bd5f92f30"
      unitRef="shares">57046000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="i5a0bc79763dc4e598a1c472cbd1d5115_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzItMS0xLTEtNzg2MDg_591039c6-eeff-4cb3-8820-724e6456bfef"
      unitRef="shares">158644000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="i2cfa9bdf7c0946779e9e5961e5bf5129_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzItMy0xLTEtNzg2MDg_c3092951-2cc9-4ffd-9fe8-82d7b3e8d194"
      unitRef="shares">223892000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="i165b9446497e4588a98219722216535c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzItNS0xLTEtNzg2MDg_b6295892-5108-400f-9a99-924188c846d7"
      unitRef="shares">231343000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid
      contextRef="i17939686689243ebbbe2ee842d9ef194_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzMtMS0xLTEtNzg2MDg_5fce1093-fb4b-4acf-a956-a0d5d0cbedaa"
      unitRef="usd">3689000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid
      contextRef="i930b4b829e46464d8b28d88edcec3ed6_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzMtMy0xLTEtNzg2MDg_18fa0530-6d5e-41ac-8b80-5db22896dc22"
      unitRef="usd">4915000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid
      contextRef="ia77e82f6fba44e7cbfb58c000d393766_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzMtNS0xLTEtNzg2MDg_8191f111-8c7d-4d2e-a7ee-97d01589ac54"
      unitRef="usd">15401000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid>
    <rock:ManagementStockPurchasePlanCompensationExpense
      contextRef="ie5f43f67274444859364f93c14051faf_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzQtMS0xLTEtNzg2MDg_f883119f-a426-4331-9233-3c5dd3c139f9"
      unitRef="usd">-4459000</rock:ManagementStockPurchasePlanCompensationExpense>
    <rock:ManagementStockPurchasePlanCompensationExpense
      contextRef="iae9e35db404446b9860afc58484c10f9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzQtMy0xLTEtNzg2MDg_938f2956-df33-4c72-9d50-b18adf05397f"
      unitRef="usd">6034000</rock:ManagementStockPurchasePlanCompensationExpense>
    <rock:ManagementStockPurchasePlanCompensationExpense
      contextRef="ic753417107234c3a8a4bd0b0e8e4c908_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjEvZnJhZzo5OTMxNDg3NGRlZmM0ZDdmODQ0NWRiM2M4MTUyY2M1YS90YWJsZTozMDRmN2Y5ZjYyMDQ0YzQ2OGU4YmZkNjIxZGU1OWQ0OC90YWJsZXJhbmdlOjMwNGY3ZjlmNjIwNDRjNDY4ZThiZmQ2MjFkZTU5ZDQ4XzQtNS0xLTEtNzg2MDg_06da08c9-df3b-4548-a93e-ecb93d31c48c"
      unitRef="usd">4518000</rock:ManagementStockPurchasePlanCompensationExpense>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjQvZnJhZzo5OTc3ODdkNzIxNDk0YmM0ODMxNDAzNjhjNTVkMzE3My90ZXh0cmVnaW9uOjk5Nzc4N2Q3MjE0OTRiYzQ4MzE0MDM2OGM1NWQzMTczXzMxMTM_6d787180-ac99-458e-bbcf-9d71bc72b334">FAIR VALUE MEASUREMENTS&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Depending on the nature of the asset or liability, various techniques and assumptions can be used to estimate fair value. A financial asset or liability&#x2019;s classification within the hierarchy is determined based on the lowest level input that is significant to the fair value measurement as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 1 - Quoted prices in active markets for identical assets or liabilities. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 2 - Observable inputs other than quoted prices in active markets for similar assets and liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 3 - Inputs that are unobservable inputs for the asset or liability.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had no financial assets or liabilities measured at fair value on a recurring basis and did not have any financial instruments for which carrying value differed from its fair value at December&#160;31, 2022 and 2021.  As of December 31, 2022, the Company had $91.0&#160;million outstanding on its revolving credit facility under its Credit Agreement.  The Company determined the carrying value of the outstanding balance on its revolving credit facility approximates fair value due to the variable market interest rate terms of the credit facility.  The Company had $24.5&#160;million outstanding on its revolving credit facility as of December 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s other financial instruments primarily consist of cash and cash equivalents, accounts receivable, notes receivable, and accounts payable.&#160; The carrying values for these financial instruments approximate fair value. The Company did not have any other material assets or liabilities carried at fair value and measured on a recurring basis as of December&#160;31, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Other non-recurring fair value measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recorded impairment of property, plant and equipment during the years ended December 31, 2022 and 2020, and recognized impairment charges related to certain intangible assets during the year ended December 31, 2021. The Company uses unobservable inputs, classified as Level 3 inputs, in determining the fair value of these assets. See Note 7 "Goodwill and Related Intangible Assets," Note 14 "Held for Sale and Discontinued Operations" and Note 15 "Exit Activity Costs and Asset Impairments" for more disclosure regarding the impairment of certain intangible assets and property, plant, and equipment, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also applied fair value principles for the goodwill impairment tests performed during 2022, 2021, and 2020. The Company used two valuation models to estimate the fair values of its reporting units, both of which primarily use Level 3 inputs. See Note 7 "Goodwill and Related Intangible Assets" of the consolidated financial statements for the results of the Company&#x2019;s goodwill impairment tests.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Additionally, the Company's recent acquisition activity, as described in Note 6 "Acquisitions," used Level 3 inputs to estimate fair values allocated to the assets acquired and liabilities assumed.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:LongTermDebt
      contextRef="i2e00a01d8de24157995e47b11966bd92_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjQvZnJhZzo5OTc3ODdkNzIxNDk0YmM0ODMxNDAzNjhjNTVkMzE3My90ZXh0cmVnaW9uOjk5Nzc4N2Q3MjE0OTRiYzQ4MzE0MDM2OGM1NWQzMTczXzEwMzQ_01c96fc3-b1e8-4ef4-98af-ca26657ebff7"
      unitRef="usd">91000000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="id7e0272766e042deb09c8d7bf29912bf_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjQvZnJhZzo5OTc3ODdkNzIxNDk0YmM0ODMxNDAzNjhjNTVkMzE3My90ZXh0cmVnaW9uOjk5Nzc4N2Q3MjE0OTRiYzQ4MzE0MDM2OGM1NWQzMTczXzEzMzI_05085420-948d-497d-beca-a1f01420644e"
      unitRef="usd">24500000</us-gaap:LongTermDebt>
    <us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzI0MzA_b55ce41b-71d4-4174-acba-6970c4f209f4">HELD FOR SALE AND DISCONTINUED OPERATIONS&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Held for Sale&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the first quarter of 2022, the Company committed to a plan to sell its Processing business (the "disposal group") which is a business within the Company's Agtech reportable segment. The planned sale does not meet the criteria to be classified as a discontinued operation.  As a result, the Company will continue reporting the operating results of the disposal group in the Company's consolidated operating results from continuing operations until the sale of the business is completed.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company classifies assets and related liabilities as held for sale when: (i) management has committed to a plan to sell the assets, (ii) the net assets are available for immediate sale, (iii) there is an active program to locate a buyer and (iv) the sale and transfer of the net assets is probable within one year. Assets and liabilities held for sale are presented in prepaid expenses and other current assets and accrued expenses on the Company's consolidated balance sheets with a valuation allowance to recognize the net carrying amount at the lower of cost or fair value, less costs to sell.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 2022, the assets and liabilities of the disposal group have been classified as held for sale. The following table summarizes these assets and liabilities which have been measured at the lower of (i) the carrying value when classified as held for sale and (ii) the fair value of the business less costs to sell.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.338%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.854%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net of allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;266&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories, net of reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangibles, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,062&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total liabilities held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales, operating loss and valuation allowance recorded for this disposal group for the years ended December 31 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.361%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.159%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,840&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,769)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,539)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Effective with the classification of the disposal group as held for sale, depreciation of property, plant, and equipment and amortization of finite-lived intangible assets and right-of-use assets are not recorded while these assets are classified as held for sale. As a result of the Company's evaluation of the recoverability of the carrying value of the assets and liabilities held for sale relative to an estimated sales price, adjusted for costs to sell, a valuation allowance of $14.0&#160;million was recorded during the twelve months ended December 31, 2022 and has been presented within other expense (income) in the consolidated statements of operations. The recoverability of the disposal group will be evaluated each reporting period until the sale of the business is completed.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Discontinued Operations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 23, 2021, the Company sold the stock of its Industrial business which had been classified as held for sale and reported as a discontinued operation in the Company&#x2019;s consolidated financial statements for the years ended December 31, 2021 and 2020.  Net proceeds of $38&#160;million, consisting of cash and a $13&#160;million seller note, resulted in an estimated pre-tax loss of $30&#160;million, subject to working capital and other adjustments, of which $29.6&#160;million was recorded when the assets of the Industrial business were written down to fair market value during the fourth quarter of 2020.  The seller note was paid in full to the Company during the second quarter of 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The results of operations of the Industrial business have been presented as a discontinued operation in the Company's consolidated financial statements for all periods presented.  The Company allocates interest to its discontinued operations in accordance with ASC Subtopic 205-20, &#x201c;Presentation of Financial Statements &#x2013; Discontinued Operations.&#x201d; Interest was allocated based on the amount of net assets held by the discontinued operation in comparison to consolidated net assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the income (loss) from discontinued operations before taxes, including the interest allocated to discontinued operations, for the years ended December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.800%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,493&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss and adjustments to loss on disposal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest expense allocation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income (loss) from discontinued operations before taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,602)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On June 30, 2020,  the Company sold its self-guided apartment tour application business to a third party from its Residential segment.  The $2.0&#160;million net proceeds from the sale resulted in pre-tax net gain of $1.9&#160;million and has been presented within other expense (income) in the consolidated statements of operations.  This divestiture did not meet the criteria to be reported as a discontinued operation nor did it have a major effect on the Company's operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock>
    <us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzIxOTkwMjMyNzI2MjE_aab957c4-9f38-417c-aab5-73e0156734c3">The following table summarizes these assets and liabilities which have been measured at the lower of (i) the carrying value when classified as held for sale and (ii) the fair value of the business less costs to sell.&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.338%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.854%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net of allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;266&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories, net of reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangibles, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,062&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total liabilities held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales, operating loss and valuation allowance recorded for this disposal group for the years ended December 31 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.361%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.159%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,840&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,769)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,539)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the income (loss) from discontinued operations before taxes, including the interest allocated to discontinued operations, for the years ended December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.800%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,493&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss and adjustments to loss on disposal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest expense allocation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income (loss) from discontinued operations before taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,602)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzItMi0xLTEtOTE5NzU_9aa68bdb-3048-4078-b2fc-1e5af8e424a2"
      unitRef="usd">266000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzMtMi0xLTEtOTE5NzU_4015ef63-dc93-4baf-807c-11be401f7b0a"
      unitRef="usd">6748000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzQtMi0xLTEtOTE5NzU_f95951db-824d-4257-a7ae-93db18d0fe5e"
      unitRef="usd">1999000</us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzUtMi0xLTEtOTE5NzU_d6b6ee18-644c-4daf-96b8-87f739f9752d"
      unitRef="usd">331000</us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent>
    <rock:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzYtMi0xLTEtOTE5NzU_2ff22014-b451-4958-87f4-351d18cf8b10"
      unitRef="usd">495000</rock:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzctMi0xLTEtOTE5Nzc_160a0a66-d4b5-4663-8c89-ca8e7a7cccfc"
      unitRef="usd">6213000</us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent>
    <rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzgtMi0xLTEtOTMyMDQ_2d636b90-035b-4ca2-9631-baf677e93432"
      unitRef="usd">13990000</rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzktMi0xLTEtOTE5Nzk_7acd5b65-5eec-4b9f-87c8-1bf692917f9d"
      unitRef="usd">2062000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzExLTItMS0xLTkxOTgx_ecea05e7-7df8-4606-b617-a6fba6df2adb"
      unitRef="usd">733000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzEyLTItMS0xLTkxOTgx_51398d6d-e5db-4b23-972e-4d0b2b6b09c7"
      unitRef="usd">1159000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent>
    <rock:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzEzLTItMS0xLTkxOTgx_b59f3ac3-4e09-434c-b248-499ff73f767a"
      unitRef="usd">70000</rock:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkZWJlNTUyMzM5ODY0YzA1YmFjZTc0NWQ0OWMzZjZjMS90YWJsZXJhbmdlOmRlYmU1NTIzMzk4NjRjMDViYWNlNzQ1ZDQ5YzNmNmMxXzE0LTItMS0xLTkxOTgx_f2c34084-a36e-450f-b325-3ea17f108af9"
      unitRef="usd">1962000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue
      contextRef="ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzItNS0xLTEtOTE5ODc_113a2ffc-f2bc-4c0f-98b7-5626758af0f7"
      unitRef="usd">7840000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue
      contextRef="if48290fab268427aad7de6ccfec05cff_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzItNy0xLTEtOTE5ODk_9f7591ac-de36-4130-86df-71e9fd878df1"
      unitRef="usd">20328000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss
      contextRef="ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzMtNS0xLTEtOTE5ODc_776e9b36-35ae-4205-9f72-87d76bcf8b7f"
      unitRef="usd">-6769000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss
      contextRef="if48290fab268427aad7de6ccfec05cff_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzMtNy0xLTEtOTE5ODk_a9123dcf-32c3-40c9-a8eb-b40830eba37b"
      unitRef="usd">-3539000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss>
    <rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzQtNS0xLTEtOTMyMDI_4f2d428f-fbae-4d46-af04-6f23b3caa4db"
      unitRef="usd">13990000</rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance>
    <rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance
      contextRef="i09954123688144c990bd164885fb1b93_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTo5MDVmYzNiNTE1NmY0N2QyODA5ZWFjZThjOWFkYzNkYy90YWJsZXJhbmdlOjkwNWZjM2I1MTU2ZjQ3ZDI4MDllYWNlOGM5YWRjM2RjXzQtNy0xLTEtOTMyMDI_a1d20119-55ee-4c69-9387-f24a5b58a684"
      unitRef="usd">0</rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance>
    <rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance
      contextRef="i5d1b7da973f44c23ba3652f9d13b2042_I20221231"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzU0OTc1NTgyODg3Mw_0daba04f-034e-4f8b-92b7-1e6a03f63c4a"
      unitRef="usd">14000000</rock:DisposalGroupIncludingDiscontinuedOperationValuationAllowance>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration
      contextRef="ic9662d503bf04b7a9318b1d725f12705_I20210223"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzI4Nw_5a5282a0-e213-4be9-91f7-9dbde591b1eb"
      unitRef="usd">38000000</us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration>
    <us-gaap:NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1
      contextRef="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzMxNg_a2b2062d-9089-4320-b90e-c5179fdfc4bf"
      unitRef="usd">13000000</us-gaap:NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1>
    <us-gaap:DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax
      contextRef="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzM3Mw_9431ade1-f747-42d1-8ccf-af5861ed7e02"
      unitRef="usd">-30000000</us-gaap:DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="i4a5fa95816d64be4984f2981d5414a2c_D20210223-20210223"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzQzNg_cd320cd3-718a-4ee6-9bb8-0a7d0e3e4ff0"
      unitRef="usd">-29600000</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue
      contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzEtMS0xLTEtNzg2MDg_238d1085-00c5-48c4-a403-3879562e7ba2"
      unitRef="usd">0</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue
      contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzEtMy0xLTEtNzg2MDg_6b3921c1-bc79-46fb-8a79-7a94a49cc32d"
      unitRef="usd">20391000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue
      contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzEtNS0xLTEtNzg2MDg_4c885b18-df78-4002-97f1-1413685f5827"
      unitRef="usd">128915000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense
      contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzItMS0xLTEtNzg2MDg_b110742f-5f6a-4f63-abe3-f9dd4f35864d"
      unitRef="usd">0</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense
      contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzItMy0xLTEtNzg2MDg_0b5dd216-3018-464b-bca3-80e8446d1167"
      unitRef="usd">17493000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense
      contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzItNS0xLTEtNzg2MDg_8132d04c-32e6-4233-89c1-786e90e3b19e"
      unitRef="usd">115822000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzMtMS0xLTEtNzg2MDg_00c0f2fc-1b89-4497-8b49-88314edda905"
      unitRef="usd">0</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzMtMy0xLTEtNzg2MDg_a15aa6e6-1f5f-4a4d-bd4e-e47bb517bff2"
      unitRef="usd">-1419000</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzMtNS0xLTEtNzg2MDg_dd883e43-9ce8-4814-b8a3-284cb0338214"
      unitRef="usd">-29600000</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense
      contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzQtMS0xLTEtNzg2MDg_5b6b051f-856c-4009-8cfa-97c67e58c069"
      unitRef="usd">0</us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense
      contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzQtMy0xLTEtNzg2MDg_2cfef7c8-0392-4855-a8ef-9de438c81f24"
      unitRef="usd">0</us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense
      contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzQtNS0xLTEtNzg2MDg_84b846d8-2b8c-4482-b3f1-9f9f6862aaa6"
      unitRef="usd">95000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax
      contextRef="i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzUtMS0xLTEtNzg2MDg_845a8d3e-f044-4be1-8b95-9d4b9a82bafb"
      unitRef="usd">0</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax
      contextRef="ic654781faab64814b777cd2681362361_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzUtMy0xLTEtNzg2MDg_d958a21e-5bdc-44c3-9223-b7a8055b6253"
      unitRef="usd">1479000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax
      contextRef="i63f9fac709ee458f9503d4860b7e3726_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90YWJsZTpkYmFlMjAxZDIyMmY0YmY5YjVlMWU5MWE5Y2MzZjZhYi90YWJsZXJhbmdlOmRiYWUyMDFkMjIyZjRiZjliNWUxZTkxYTljYzNmNmFiXzUtNS0xLTEtNzg2MDg_e3c82231-529f-443c-9677-dbd5af05b789"
      unitRef="usd">-16602000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:ProceedsFromDivestitureOfBusinesses
      contextRef="ib272e75884f9475f844fa8b4b9e2e0a9_D20200630-20200630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzIxMjQ_d64a5be4-ca74-4a9c-9ce9-7375c4eb62d2"
      unitRef="usd">2000000</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="ib272e75884f9475f844fa8b4b9e2e0a9_D20200630-20200630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMjcvZnJhZzpiZjljYzhkMjYyNWI0NDNjOGRhMTJhNjNjNDQ2ZDRiMi90ZXh0cmVnaW9uOmJmOWNjOGQyNjI1YjQ0M2M4ZGExMmE2M2M0NDZkNGIyXzIxODY_571ee737-8fb2-4f4c-ae3c-fc83a730252c"
      unitRef="usd">1900000</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzE3ODM_1d81b883-1ac4-46d8-af57-bb66ed748403">EXIT ACTIVITY COSTS AND ASSET IMPAIRMENTS&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has incurred exit activity costs and asset impairment charges as a result of its 80/20 simplification and portfolio management initiatives. These initiatives have resulted in the identification of low-volume, low margin, internally-produced products which have been or will be outsourced or discontinued, the simplification of processes, in the sale and exiting of less profitable businesses or products lines, and the reduction in the Company's manufacturing footprint.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Exit activity costs were incurred during 2022 related to moving and closing costs, severance and contract terminations, along with asset impairment charges related to the write-down of inventory and impairment of machinery and equipment associated with discontinued product lines, as a result of process simplification initiatives.  In conjunction with these initiatives, in 2022, the Company exited a facility, relocating to a new one, and separately, closed two other facilities.  In 2021, the Company closed four facilities.  In 2020, the Company closed two facilities and, separately, sold a facility closed in 2017.  These closures resulted in exit activity costs and asset impairment charges.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth the exit activity costs (recoveries) and asset impairment charges incurred by segment during the years ended December&#160;31 related to the restructuring activities described above (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.366%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Exit activity costs (recoveries)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Asset impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Exit activity costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Asset impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Exit activity costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Asset impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,769&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;731&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;771&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Infrastructure &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(63)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(63)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,207&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides a summary of where the above exit activity costs and asset impairments are recorded in the consolidated statements of operations for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,176&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total exit activity costs and asset impairments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table reconciles the beginning and ending liability for exit activity costs relating to the Company&#x2019;s facility consolidation efforts (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of January&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,030&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exit activity costs recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December&#160;31&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock>
    <rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzU0OTc1NTgxODAyMQ_8c3e3470-25ec-4095-9bdb-f0e9e5db178d"
      unitRef="facility">2</rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed>
    <rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzkyNw_adb4d524-16ce-4feb-8e3a-eea2708b8644"
      unitRef="facility">4</rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed>
    <rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzk3MQ_19a2e0d7-4322-4840-80f0-8f0a35c3f517"
      unitRef="facility">2</rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed>
    <us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzE3ODQ_d5bf2f5f-d79f-448d-b234-8bb849a06ed0">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth the exit activity costs (recoveries) and asset impairment charges incurred by segment during the years ended December&#160;31 related to the restructuring activities described above (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.366%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Exit activity costs (recoveries)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Asset impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Exit activity costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Asset impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Exit activity costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Asset impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,769&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;731&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;771&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Infrastructure &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(63)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(63)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,207&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table reconciles the beginning and ending liability for exit activity costs relating to the Company&#x2019;s facility consolidation efforts (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of January&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,030&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exit activity costs recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December&#160;31&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock>
    <us-gaap:BusinessExitCosts1
      contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMS0xLTEtNzg2MDg_f8a5a17a-0087-4add-bf1e-8f701bf0dd81"
      unitRef="usd">3256000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMy0xLTEtNzg2MDg_89bcd0f4-3da2-4888-a486-5723634bf9dc"
      unitRef="usd">1198000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItNS0xLTEtNzg2MDg_945bb58e-c0c4-4bce-a7cb-d8879ddedc99"
      unitRef="usd">4454000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItNy0xLTEtNzg2MDg_9f1473d2-adf2-416e-8acf-16ee87eac153"
      unitRef="usd">4769000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItOS0xLTEtNzg2MDg_5ded7a2a-a9a5-4417-ab81-618e67a38c22"
      unitRef="usd">1193000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMTMtMS0xLTc4NjA4_9e67e9fb-917a-41b0-9df2-56592d55262b"
      unitRef="usd">5962000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMTUtMS0xLTc4NjA4_e77a658e-2c7f-4e0e-b7e2-43ee9ae9bdcf"
      unitRef="usd">15000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMTctMS0xLTc4NjA4_bbc4dc4d-84af-43f6-a4d6-dc1e92b87f25"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzItMjEtMS0xLTc4NjA4_f866f9aa-f4c8-42ae-a4c1-4f623e3d73c2"
      unitRef="usd">15000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMS0xLTEtNzg2MDg_48dd9cf3-e709-4ea7-b135-46088ead5300"
      unitRef="usd">1825000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMy0xLTEtNzg2MDg_3bc30866-f12e-4a94-85eb-4c51e9f0448e"
      unitRef="usd">12000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtNS0xLTEtNzg2MDg_9fa03f18-0798-459b-8dbe-ba9756cb6e4a"
      unitRef="usd">1837000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtNy0xLTEtNzg2MDg_9f497339-2336-4eb4-8cf7-e895c6e9d424"
      unitRef="usd">393000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtOS0xLTEtNzg2MDg_bee653c2-a5df-4919-beda-29b35678465c"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMTMtMS0xLTc4NjA4_7c4f1205-ed1e-4d32-9483-519d3f0091a5"
      unitRef="usd">393000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMTUtMS0xLTc4NjA4_7194f565-0be2-4b55-9c35-1158c823397d"
      unitRef="usd">731000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMTctMS0xLTc4NjA4_f123df8a-5789-4ec5-9450-8eba3359eae0"
      unitRef="usd">9000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzMtMjEtMS0xLTc4NjA4_02f03e07-fec3-4caa-9463-ba214db84598"
      unitRef="usd">740000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMS0xLTEtNzg2MDg_973a0e5d-cdcc-4827-81af-0b9482a8f184"
      unitRef="usd">771000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMy0xLTEtNzg2MDg_e50d262d-1f34-43e1-8b35-a87395451ac0"
      unitRef="usd">1066000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtNS0xLTEtNzg2MDg_46f4759d-1dff-42fd-b911-e1f558757f24"
      unitRef="usd">1837000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtNy0xLTEtNzg2MDg_4d211b2c-e25a-452a-b423-51ed6ff2071c"
      unitRef="usd">1687000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtOS0xLTEtNzg2MDg_c1594087-e9ee-4a22-bf6c-2e0582b0b858"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMTMtMS0xLTc4NjA4_16c257f5-990b-4f26-b360-d03e2a3972a8"
      unitRef="usd">1687000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMTUtMS0xLTc4NjA4_0fed3b6f-5a3d-498e-a243-af6ef4bdbad9"
      unitRef="usd">860000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMTctMS0xLTc4NjA4_3ea9796d-8f48-4b7b-b1a0-9a77ce7639b1"
      unitRef="usd">72000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzQtMjEtMS0xLTc4NjA4_42e232f0-fa05-4c28-9ce0-762209537496"
      unitRef="usd">932000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMS0xLTEtNzg2MDg_71259b45-0fe4-47f8-a6b1-8d6ead0715d5"
      unitRef="usd">-63000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMy0xLTEtNzg2MDg_7016777b-d865-4d5a-8b3d-1af9e65488cc"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtNS0xLTEtNzg2MDg_482aaad3-5118-4fb8-a9af-1290c0b63f94"
      unitRef="usd">-63000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtNy0xLTEtNzg2MDg_a2b6ed76-e606-4254-bef0-8195f9ad5527"
      unitRef="usd">26000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtOS0xLTEtNzg2MDg_82adbcc4-9bad-4343-96f9-5cd972b95ff5"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMTMtMS0xLTc4NjA4_aa0310a7-61d9-4bd4-944e-3c40fbb90ca8"
      unitRef="usd">26000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMTUtMS0xLTc4NjA4_f5763cf3-7a84-4fab-b1d5-5657642f0c33"
      unitRef="usd">226000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMTctMS0xLTc4NjA4_f5017620-d003-4a35-87c1-974346e355f3"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzUtMjEtMS0xLTc4NjA4_1ca1f537-edb3-4f34-b2fd-4b6929ed8b11"
      unitRef="usd">226000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMS0xLTEtNzg2MDg_c56d7406-c8ff-4cc5-96a2-03529b60f3b3"
      unitRef="usd">250000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMy0xLTEtNzg2MDg_80b7bb6c-75c9-4b55-ba7a-b25e0dba7512"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtNS0xLTEtNzg2MDg_9ceeb987-7349-4381-876b-d25f1015590a"
      unitRef="usd">250000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtNy0xLTEtNzg2MDg_baf9ec37-2878-4bb7-b717-a19c70e33369"
      unitRef="usd">145000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtOS0xLTEtNzg2MDg_edc8bd01-e70f-4979-8e52-16d9bd5cd8d3"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMTMtMS0xLTc4NjA4_7344ad47-e31e-456f-88c9-59aba092b87d"
      unitRef="usd">145000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMTUtMS0xLTc4NjA4_cf42c6bf-0ada-48e2-8dd5-3c00601c35e3"
      unitRef="usd">375000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMTctMS0xLTc4NjA4_d9eb8847-275d-4a73-a969-8983d41ae07c"
      unitRef="usd">0</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzYtMjEtMS0xLTc4NjA4_24dcb981-1cc8-4995-9946-f3a168893bb3"
      unitRef="usd">375000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMS0xLTEtNzg2MDg_14cc8ad4-ab37-44d1-ac48-09402bdd3ee6"
      unitRef="usd">6039000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMy0xLTEtNzg2MDg_9d8723c2-1123-4fa3-bc6d-abcd0ad33285"
      unitRef="usd">2276000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctNS0xLTEtNzg2MDg_5eecd10b-2529-4e57-806c-9f30dbe96e2d"
      unitRef="usd">8315000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctNy0xLTEtNzg2MDg_5573d201-f2bd-4e56-b8b1-30dbeaa2ff5e"
      unitRef="usd">7020000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctOS0xLTEtNzg2MDg_f351a79a-096a-403b-8cf9-ff0e9793dd7c"
      unitRef="usd">1193000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMTMtMS0xLTc4NjA4_0d017fc6-6aa2-4d9f-b313-a58a4cb664b5"
      unitRef="usd">8213000</us-gaap:RestructuringCharges>
    <us-gaap:BusinessExitCosts1
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMTUtMS0xLTc4NjA4_586c355b-d610-4f71-8498-9a5861d41137"
      unitRef="usd">2207000</us-gaap:BusinessExitCosts1>
    <us-gaap:RestructuringSettlementAndImpairmentProvisions
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMTctMS0xLTc4NjA4_5d1be4d1-92cb-446b-8a6d-bc980879c7c4"
      unitRef="usd">81000</us-gaap:RestructuringSettlementAndImpairmentProvisions>
    <us-gaap:RestructuringCharges
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo2NDY2YmY1MDE2ZDc0ZWU4OWVjZjI3MzZlMzRhNDhlNS90YWJsZXJhbmdlOjY0NjZiZjUwMTZkNzRlZTg5ZWNmMjczNmUzNGE0OGU1XzctMjEtMS0xLTc4NjA4_b3e3acc3-8432-4421-83e5-7bbe1dbf97a2"
      unitRef="usd">2288000</us-gaap:RestructuringCharges>
    <us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90ZXh0cmVnaW9uOjcxYTM0ZGUzOTk4YzRhNjY5NTEwYmIwN2YwODVhNzVlXzE3NzA_83e7eb0f-7454-42f8-8009-1bf036ee1d91">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides a summary of where the above exit activity costs and asset impairments are recorded in the consolidated statements of operations for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,176&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total exit activity costs and asset impairments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock>
    <us-gaap:RestructuringCharges
      contextRef="i45c7964e33af433eb4a807a5353dd710_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzEtMS0xLTEtNzg2MDg_3ecfe6d6-6288-4725-b7b1-4834b9a4e90a"
      unitRef="usd">5258000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="iafd13dad52a244fe8c23e99242ee61c8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzEtMy0xLTEtNzg2MDg_294ebffd-0266-4fe1-8094-a9b2887617f1"
      unitRef="usd">6176000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="iba9c650d738747a2ac239a7124dc9d82_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzEtNS0xLTEtNzg2MDg_d1c963b3-4213-4d18-b920-88f599ac3bfc"
      unitRef="usd">1059000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="ida1166cf063645c2ae303d35faf48820_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzItMS0xLTEtNzg2MDg_1ddfbc42-b24e-4eee-8135-13cfcb209cd6"
      unitRef="usd">3057000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i0f1488a28ad0418caff93c9d40bd09d3_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzItMy0xLTEtNzg2MDg_13119e7f-dd67-460c-b54d-c370d8c8fd01"
      unitRef="usd">2037000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="ieb46dc1bb0264e97b683bb8e999646b7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzItNS0xLTEtNzg2MDg_d6b8fc78-5179-485e-bce6-32b6f086915a"
      unitRef="usd">1229000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzMtMS0xLTEtNzg2MDg_33c4495c-38de-41a9-a49c-9860cbcab03f"
      unitRef="usd">8315000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzMtMy0xLTEtNzg2MDg_be469d30-1a8d-4fe0-a560-21945e006d15"
      unitRef="usd">8213000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTo0M2IxYWI3ZDUwYWY0ZTM0YThjNzAyM2JhNjI5ZDEyYy90YWJsZXJhbmdlOjQzYjFhYjdkNTBhZjRlMzRhOGM3MDIzYmE2MjlkMTJjXzMtNS0xLTEtNzg2MDg_9d649ee4-bc36-41b0-b6e9-21be5643c368"
      unitRef="usd">2288000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringReserve
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzEtMS0xLTEtNzg2MDg_746c8899-a75f-413c-a21a-79ece8dc9c3d"
      unitRef="usd">272000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzEtMy0xLTEtNzg2MDg_05d227d6-1b84-4f60-bc8f-fb8039fca6ae"
      unitRef="usd">1030000</us-gaap:RestructuringReserve>
    <us-gaap:BusinessExitCosts1
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzItMS0xLTEtNzg2MDg_32852034-899d-42cd-911b-a08763b1a115"
      unitRef="usd">6039000</us-gaap:BusinessExitCosts1>
    <us-gaap:BusinessExitCosts1
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzItMy0xLTEtNzg2MDg_b1a6c000-3b11-400e-96f6-e07198afac55"
      unitRef="usd">7020000</us-gaap:BusinessExitCosts1>
    <us-gaap:PaymentsForRestructuring
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzMtMS0xLTEtNzg2MDg_8b71af17-93ef-447c-84b5-f7f831c54bae"
      unitRef="usd">3894000</us-gaap:PaymentsForRestructuring>
    <us-gaap:PaymentsForRestructuring
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzMtMy0xLTEtNzg2MDg_9e1141c4-2d8a-4d49-8cc7-ed698b774c69"
      unitRef="usd">7778000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserve
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzUtMS0xLTEtNzg2MDg_33657297-5629-4eb8-99b0-3e22151b0b8c"
      unitRef="usd">2417000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzAvZnJhZzo3MWEzNGRlMzk5OGM0YTY2OTUxMGJiMDdmMDg1YTc1ZS90YWJsZTphN2VjNjc4ZTY0NGM0OTkxYTM2ZDljODdkNzJkZjk0ZC90YWJsZXJhbmdlOmE3ZWM2NzhlNjQ0YzQ5OTFhMzZkOWM4N2Q3MmRmOTRkXzUtMy0xLTEtNzg2MDg_18446680-16ec-46ad-ad53-d52c842b8cb3"
      unitRef="usd">272000</us-gaap:RestructuringReserve>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2Nzg_17202012-2601-43ab-8faa-3316ebd6eda1">INCOME TAXES&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax basis. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to reverse.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of income before taxes from continuing operations consisted of the following for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112,635&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,155&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,407&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,171)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income before taxes from continuing operations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes from continuing operations for the years ended December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,071&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,078&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,766&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(303)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(506)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provision for income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes from discontinued operations for the years ended December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(340)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(876)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(138)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(349)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provision for income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;366&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes from continuing operations differs from the federal statutory rate of 21% due to the following for the years ended December 31 (in thousands, except for percentages) :&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.325%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.325%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.331%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,908&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State taxes, less federal effect&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(549)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.5)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,064)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Excess tax benefit on stock based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(214)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,039)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,674)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Executive compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(130)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(67)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(57)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax liabilities at December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital loss carryforward&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,490)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,328)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equity compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,993)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,236)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assets held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,669)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capitalized research and development costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,503)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(17,493)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15,641)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68,148)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(51,205)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets, net of valuation allowances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41,660)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24,624)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December&#160;31, 2022, the Company had total net operating loss carry forwards of $7.9 million, which included $0.4 million for federal, $6.6 million for state, and $0.9 million for foreign income tax purposes. The federal and state net operating loss carry forwards expire between 2023 and 2042. The foreign net operating loss carry forwards expire between 2023 and 2031. The Company recognized a total of $0.7 million of deferred tax assets, net of the federal tax benefit, related to these net operating losses prior to any valuation allowances, which included $0.1 million of federal and $0.4 million of state deferred tax assets and $0.2&#160;million of foreign deferred tax assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the sale of the Industrial business during 2021, the Company generated a capital loss of $113.7&#160;million for federal and state purposes to the extent allowable under state tax regulations. Amended Federal returns were filed to carry back $3.7&#160;million of capital loss. As of December 31, 2022, the remaining capital loss carry forward is $110.0&#160;million. The capital loss carryforward will expire in 2026.  The Company recognized a total of $26.5&#160;million of deferred tax assets, net of the federal benefit, related to this carryforward prior to any valuation allowances, which included $22.2&#160;million of federal and $4.3&#160;million of state deferred tax assets. The Company has a full valuation allowance on the capital loss carry forward and as a result there is no deferred tax asset.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred taxes include net deferred tax assets relating to certain state and foreign tax jurisdictions. A reduction of the carrying amount of deferred tax assets by a valuation allowance is required if it is more likely than not that such assets will not be realized. In 2020, the valuation allowance in China was reversed and a tax attribute valuation allowance was also reversed as the Company expects to utilize the attribute.  In 2021, a valuation allowance was recorded on federal and state capital loss carry forwards which are not expected to be utilized before expiration. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following sets forth a reconciliation of the beginning and ending amount of the Company&#x2019;s valuation allowance (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of January&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost charged to the tax provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reductions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(103)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(248)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reclassification from discontinued operations upon sale of industrial group&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December&#160;31&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company made net payments for income taxes for the following amounts for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.077%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.249%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.539%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.249%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.539%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.547%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payments made for income taxes, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,076&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,351&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December 31, 2022, the Company had approximately $2.2 million of undistributed earnings of foreign subsidiaries.  The Company continues to maintain its assertion that all remaining foreign earnings will be indefinitely reinvested.  Any excess earnings could be used to grow the Company's foreign operations through launches of new capital projects or additional acquisitions. Determination of the amount of unrecognized deferred U.S. income tax liability related to the Company's remaining unremitted foreign earnings is not practicable due to the complexities associated with its hypothetical calculation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2022, 2021 and 2020, the Company did not have any unrecognized tax benefits and no activity related to such benefits has occurred in any of the years presented in the consolidated financial statements. The Company classifies accrued interest and penalties related to unrecognized tax benefits in income tax expense.  No interest or penalties have been recognized during the years ended December 31, 2022, 2021 or 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company and its U.S. subsidiaries file a U.S. federal consolidated income tax return. Foreign and U.S. state jurisdictions have statute of limitations generally ranging from &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ0NzE_d000bffc-7cbf-4586-bee5-b23ff0114e19"&gt;four&lt;/span&gt; to ten years. The Company is currently in appeals for an audit of tax years 2016 through 2019 in Massachusetts and believes the technical merits of the position will be sustained.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2OTg_b872acf8-afa0-4524-8137-2c51b4ae8a9e">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of income before taxes from continuing operations consisted of the following for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112,635&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,155&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,407&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,171)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income before taxes from continuing operations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzEtMS0xLTEtNzg2MDg_3f2b4641-b0c7-43df-829f-5b757919b3c5"
      unitRef="usd">112635000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzEtMy0xLTEtNzg2MDg_bfbc03ec-7988-4e05-a28e-4785184ac855"
      unitRef="usd">93155000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzEtNS0xLTEtNzg2MDg_74ce4fd8-164f-4441-8f0d-009e9416a2b4"
      unitRef="usd">108930000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzItMS0xLTEtNzg2MDg_b4130831-b67a-4a95-afc3-74c5553d7f9d"
      unitRef="usd">-1145000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzItMy0xLTEtNzg2MDg_7a18ac85-48cc-4c8d-ab6a-da340ef63255"
      unitRef="usd">6407000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzItNS0xLTEtNzg2MDg_cea3ae2e-efac-4fd5-9e55-2951212dd0f8"
      unitRef="usd">-1171000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzMtMS0xLTEtNzg2MDg_333eec08-cb1c-47ae-bd35-507802943d43"
      unitRef="usd">111490000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzMtMy0xLTEtNzg2MDg_751cbc65-797a-47c6-962e-0da1d048c763"
      unitRef="usd">99562000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTpkMWRjYWYzNTQ1MGM0MDQ5YTFhNmQxNjMwZWZkYTg0Zi90YWJsZXJhbmdlOmQxZGNhZjM1NDUwYzQwNDlhMWE2ZDE2MzBlZmRhODRmXzMtNS0xLTEtNzg2MDg_e04b6343-f35c-4b24-af9d-f4ded3852928"
      unitRef="usd">107759000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2ODE_70a169e3-5e8e-412a-a8aa-0d2a7212f99b">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes from continuing operations for the years ended December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,071&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,078&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,766&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(303)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(506)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provision for income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzItMS0xLTEtNzg2MDg_efcbd22f-cd9a-42fd-b3f6-3af3e8eee46d"
      unitRef="usd">17014000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzItMy0xLTEtNzg2MDg_9157620a-6ac3-4a19-8f18-8572715fc39c"
      unitRef="usd">16137000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzItNS0xLTEtNzg2MDg_cfe8b541-2d2e-4b85-88aa-4d1cdf9d13ee"
      unitRef="usd">16505000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzMtMS0xLTEtNzg2MDg_2ce38278-59e0-4010-8e35-5ad781e3a9e3"
      unitRef="usd">5647000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzMtMy0xLTEtNzg2MDg_f2772644-748d-48b1-be84-4b50ce6ae7ec"
      unitRef="usd">5009000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzMtNS0xLTEtNzg2MDg_b0c27d22-b121-4049-a54d-88523d5e8de0"
      unitRef="usd">4071000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzQtMS0xLTEtNzg2MDg_6c56a072-10dc-42b8-935f-0a0c064a29e3"
      unitRef="usd">86000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzQtMy0xLTEtNzg2MDg_67d51d5f-05ec-40ce-9543-40165f3b518e"
      unitRef="usd">932000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzQtNS0xLTEtNzg2MDg_3425329d-7161-455a-b3eb-50f5a3fbf2a1"
      unitRef="usd">106000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzUtMS0xLTEtNzg2MDg_55a0452a-d56c-43a2-ad71-673a48605e33"
      unitRef="usd">22747000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzUtMy0xLTEtNzg2MDg_f93e5ba4-799b-4cf9-931c-fb993a007739"
      unitRef="usd">22078000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzUtNS0xLTEtNzg2MDg_e9ec6844-ac48-4e84-95bb-c8fe24669d12"
      unitRef="usd">20682000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzctMS0xLTEtNzg2MDg_34ad062b-0789-4bd4-b492-9e9844977459"
      unitRef="usd">5259000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzctMy0xLTEtNzg2MDg_3640a9d2-41a4-4f0d-af64-f8678034428b"
      unitRef="usd">1766000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzctNS0xLTEtNzg2MDg_286e4210-5ab2-44ce-a860-897c43b842df"
      unitRef="usd">3620000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzgtMS0xLTEtNzg2MDg_cc5a1bcd-ac59-40d6-b943-55ab6a1e3307"
      unitRef="usd">1381000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzgtMy0xLTEtNzg2MDg_f9e44876-2800-4bd0-819f-5cd855adf30d"
      unitRef="usd">134000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzgtNS0xLTEtNzg2MDg_fe9e65f8-b88d-4553-8651-603b42e1f258"
      unitRef="usd">672000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzktMS0xLTEtNzg2MDg_ef0c7700-b6b1-4fce-888c-85bf7605b1a4"
      unitRef="usd">-303000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzktMy0xLTEtNzg2MDg_233e11ca-d888-4bc5-9376-6dbaba484367"
      unitRef="usd">1068000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzktNS0xLTEtNzg2MDg_807264df-d3e0-4710-ba8d-6a822e99f014"
      unitRef="usd">-506000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzEwLTEtMS0xLTc4NjA4_f81bffa8-96f3-4fdd-adce-c723e6ae5b83"
      unitRef="usd">6337000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzEwLTMtMS0xLTc4NjA4_e8f382cb-1cec-4841-9370-af3d132e3372"
      unitRef="usd">2968000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzEwLTUtMS0xLTc4NjA4_b066f089-49cc-4c72-a836-66e073869ace"
      unitRef="usd">3786000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i600cc11fd24045f59837bb977179beaa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzExLTEtMS0xLTc4NjA4_5bbf7796-fd91-4b37-82f3-9d970a8812db"
      unitRef="usd">29084000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ia7d3585b42bc48d1a076f6477a443cae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzExLTMtMS0xLTc4NjA4_336aaf4d-5db9-4df5-8a0c-33e64fa2459e"
      unitRef="usd">25046000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i3665a73fdc394061a6352a44ab5bb7b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxM2ZmN2QyYWU1YWE0NzA4OWRhOWJjNDNlMzQ2NWE3Mi90YWJsZXJhbmdlOjEzZmY3ZDJhZTVhYTQ3MDg5ZGE5YmM0M2UzNDY1YTcyXzExLTUtMS0xLTc4NjA4_9ded3b01-018d-4aba-8e7b-5ba4797a917f"
      unitRef="usd">24468000</us-gaap:IncomeTaxExpenseBenefit>
    <rock:ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2OTI_fb465a99-754a-4608-9f24-f8edab60efef">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes from discontinued operations for the years ended December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(340)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(876)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(138)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(349)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provision for income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;366&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzItMS0xLTEtNzg2MDg_52551080-c10c-4153-9d4a-895b077ffd9d"
      unitRef="usd">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzItMy0xLTEtNzg2MDg_0d0ec032-0036-495b-a1a9-4eda4e12101f"
      unitRef="usd">362000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzItNS0xLTEtNzg2MDg_702a15a6-a51a-4c54-a1c0-605f2bb8382b"
      unitRef="usd">1345000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzMtMS0xLTEtNzg2MDg_a091e65b-9d8e-46cc-95a9-b21b63349f6c"
      unitRef="usd">0</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzMtMy0xLTEtNzg2MDg_a30b94d1-f01b-4784-98be-9a085f0e211b"
      unitRef="usd">139000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzMtNS0xLTEtNzg2MDg_5651959d-e2fb-4cf5-8f67-1b609d4deadd"
      unitRef="usd">57000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzQtMS0xLTEtNzg2MDg_df451f17-581b-4622-a16b-0f8d27f45c3f"
      unitRef="usd">0</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzQtMy0xLTEtNzg2MDg_4994c9ad-2bc2-4fc3-9a44-1d09074949cd"
      unitRef="usd">214000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzQtNS0xLTEtNzg2MDg_aa6458c6-b48c-4854-b892-b9889e6698d4"
      unitRef="usd">1725000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzUtMS0xLTEtNzg2MDg_7549d0fc-f98f-4eaa-936c-c5c68a7e1f55"
      unitRef="usd">0</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzUtMy0xLTEtNzg2MDg_bca28501-351e-40f7-bb5e-cda52193fa93"
      unitRef="usd">715000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzUtNS0xLTEtNzg2MDg_7c50f787-274b-481d-9fde-dc4293dffc41"
      unitRef="usd">3127000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzctMS0xLTEtNzg2MDg_bcc2ea17-1f74-40a1-9b68-cde587ebe3fc"
      unitRef="usd">0</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzctMy0xLTEtNzg2MDg_55e4afb5-2ac5-4fe8-8b12-f7b305fca966"
      unitRef="usd">-340000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzctNS0xLTEtNzg2MDg_732fb0a7-f75c-4c0c-873b-f038a0555654"
      unitRef="usd">-876000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzgtMS0xLTEtNzg2MDg_713c81cd-0226-4138-a15f-72a7f95c3e24"
      unitRef="usd">0</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzgtMy0xLTEtNzg2MDg_1b768f5f-c640-44bd-8510-52b47f312ac7"
      unitRef="usd">2000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzgtNS0xLTEtNzg2MDg_55872caf-8aa5-4dd4-bb9d-1518ea6b0aa6"
      unitRef="usd">10000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzktMS0xLTEtNzg2MDg_11ec944a-6bd1-4816-b93e-faab06c7866a"
      unitRef="usd">0</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzktMy0xLTEtNzg2MDg_9dd9da28-ba3c-4ae7-abc6-9dcfc091a822"
      unitRef="usd">-11000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzktNS0xLTEtNzg2MDg_fcd5884b-172c-4dc8-b96b-e388feb2011a"
      unitRef="usd">-138000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzEwLTEtMS0xLTc4NjA4_321acd6c-ff96-400f-8307-d5d057973470"
      unitRef="usd">0</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzEwLTMtMS0xLTc4NjA4_7a0d5830-e708-40d5-9c5c-1b7cb84186ab"
      unitRef="usd">-349000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzEwLTUtMS0xLTc4NjA4_a703b822-70f3-409e-b695-d7c9de7033da"
      unitRef="usd">-1004000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation
      contextRef="ie6f0609eaefb4db39581bb539f9c3935_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzExLTEtMS0xLTc4NjA4_5679860b-f221-4bc2-b980-8b071c6bcfd0"
      unitRef="usd">0</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation
      contextRef="i0a3011337cd8446d96a39144db9e35a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzExLTMtMS0xLTc4NjA4_780cb83d-7220-436f-bacf-ecc5b7c9974a"
      unitRef="usd">366000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation
      contextRef="i124aabb42aa44138a24bffd14fadd71d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTowYzcxMzdjMGZmZWI0YzA0OWM4YjhmOTM4ZDBkYTI0OS90YWJsZXJhbmdlOjBjNzEzN2MwZmZlYjRjMDQ5YzhiOGY5MzhkMGRhMjQ5XzExLTUtMS0xLTc4NjA4_475ad3f9-1f33-4a34-b4b4-99b374c4ad0d"
      unitRef="usd">2123000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ3MjQ_57f48574-6159-4387-8fe9-6f48d99b91b7">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes from continuing operations differs from the federal statutory rate of 21% due to the following for the years ended December 31 (in thousands, except for percentages) :&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.325%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.325%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.331%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,908&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State taxes, less federal effect&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(549)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.5)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,064)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Excess tax benefit on stock based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(214)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,039)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,674)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Executive compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(130)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(67)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(57)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEwNTE_f52444af-a140-419a-ac11-24395790e8d9"
      unitRef="number">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtMS0xLTEtNzg2MDg_5f07fffd-2473-4651-8266-c580bea30417"
      unitRef="usd">23413000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtMy0xLTEtNzg2MDg_71b12247-7b1a-4be6-be61-dfcddcf8ab9d"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtNS0xLTEtNzg2MDg_fd7385d9-076e-492e-b406-63e1bc0bad9a"
      unitRef="usd">20908000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtNy0xLTEtNzg2MDg_e640e60f-eb42-4821-ad3a-d8970e4f75f2"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtOS0xLTEtNzg2MDg_61cc7edd-ec1a-4977-9667-2ac81b6112ff"
      unitRef="usd">22629000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzEtMTEtMS0xLTc4NjA4_d1351c1b-403f-4b26-a50f-40932fd6a420"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItMS0xLTEtNzg2MDg_743cc9cc-b93b-4766-a5d1-9d16a8baf2cd"
      unitRef="usd">5541000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItMy0xLTEtNzg2MDg_7d1adaf0-783d-44c6-8f85-f731a522a929"
      unitRef="number">0.050</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItNS0xLTEtNzg2MDg_b7261a04-449e-4109-be84-fd774f584df5"
      unitRef="usd">4068000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItNy0xLTEtNzg2MDg_ac722cfb-1b10-4fdd-8fe9-ae9a4894a140"
      unitRef="number">0.041</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItOS0xLTEtNzg2MDg_76ce054f-ae9b-4b29-9ced-315755d6d3ec"
      unitRef="usd">3650000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzItMTEtMS0xLTc4NjA4_faab819b-8fcb-407e-988b-d98e51bdbcdf"
      unitRef="number">0.034</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtMS0xLTEtNzg2MDg_33eddc4e-2208-4281-a04e-28d96b670e1d"
      unitRef="usd">549000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtMy0xLTEtNzg2MDg_1a4d32c7-d69a-4a1e-859d-4e1000a642e3"
      unitRef="number">0.005</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtNS0xLTEtNzg2MDg_016af22a-2d53-4fb5-9613-0b81a2daa3af"
      unitRef="usd">587000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtNy0xLTEtNzg2MDg_e5bc5379-73b1-43b2-85fc-f0936af08b71"
      unitRef="number">0.006</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtOS0xLTEtNzg2MDg_32b586b2-e86d-4996-ad8c-c66cac3758fd"
      unitRef="usd">1064000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzMtMTEtMS0xLTc4NjA4_6c160a06-e900-4d01-8baf-204de4a717fb"
      unitRef="number">0.010</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtMS0xLTEtNzg2MDg_997dbe72-5074-483f-bdbc-fbf6f53ef454"
      unitRef="usd">-214000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtMy0xLTEtNzg2MDg_f6420de8-60aa-4ad4-90cf-bfd81901f090"
      unitRef="number">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtNS0xLTEtNzg2MDg_b7fc245e-0862-4613-8612-6c5a0f4b6c5a"
      unitRef="usd">-2039000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtNy0xLTEtNzg2MDg_3d89ccf1-a8b9-4feb-a3f1-41af4c3b3b13"
      unitRef="number">-0.020</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtOS0xLTEtNzg2MDg_a81f57f4-dde6-475d-8783-8a629d10fd55"
      unitRef="usd">-1674000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzQtMTEtMS0xLTc4NjA4_012cff0c-d969-4359-a66b-1871675b170c"
      unitRef="number">-0.016</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtMS0xLTEtNzg2MDg_d7753c75-b27c-4911-a820-3bc797120f39"
      unitRef="usd">960000</rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount>
    <rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtMy0xLTEtNzg2MDg_a3df5c7c-c150-452f-ba46-b61dfcb8eb2a"
      unitRef="number">0.009</rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent>
    <rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtNS0xLTEtNzg2MDg_cabbfadd-f4b2-4df2-888b-7c3ee1352797"
      unitRef="usd">1781000</rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount>
    <rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtNy0xLTEtNzg2MDg_fbb6f3c1-bcf8-4b7d-8264-fa1bb202dcd3"
      unitRef="number">0.018</rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent>
    <rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtOS0xLTEtNzg2MDg_4fdb051a-1ed9-403f-aa30-c7537d134bf3"
      unitRef="usd">1114000</rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount>
    <rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzYtMTEtMS0xLTc4NjA4_e16a2542-aa92-4140-9d5a-17980ccf4e7b"
      unitRef="number">0.010</rock:EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctMS0xLTEtNzg2MDg_5a3f093c-6b29-4085-9223-ad75c5a94894"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctMy0xLTEtNzg2MDg_a493b1d5-92a0-443a-8b85-6a1a50ef5dc9"
      unitRef="number">0</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctNS0xLTEtNzg2MDg_06590d15-8646-4fd5-a9fa-101a1079b942"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctNy0xLTEtNzg2MDg_61294bbb-bec4-48b2-a856-09ee9b9df753"
      unitRef="number">0</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctOS0xLTEtNzg2MDg_b0371608-fffe-441a-9b1b-539f9ba153fb"
      unitRef="usd">-130000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzctMTEtMS0xLTc4NjA4_aa63ba8e-3269-4b66-9902-6b60d3068127"
      unitRef="number">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTEtMS0xLTc4NjA4_f0be28e3-05d1-473d-9191-17aa038ce5b9"
      unitRef="usd">-67000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTMtMS0xLTc4NjA4_68b158f9-4cda-4d51-af7c-853a39915a41"
      unitRef="number">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTUtMS0xLTc4NjA4_9b8347f8-3719-4e59-91a8-fdc972657b3c"
      unitRef="usd">915000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTctMS0xLTc4NjA4_4ea3d8d3-a3e1-420f-a516-5901163b4757"
      unitRef="number">0.009</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTktMS0xLTc4NjA4_f0891321-dfee-472d-9013-d4565be49ee6"
      unitRef="usd">-57000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzE5LTExLTEtMS03ODYwOA_23be699b-45bd-4b89-a9e7-714da022a328"
      unitRef="number">0</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTEtMS0xLTc4NjA4_51a2718f-0a1a-4689-98bc-70aed814257a"
      unitRef="usd">29084000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTMtMS0xLTc4NjA4_a4a3a70d-c630-4597-85ca-0f1767bf823b"
      unitRef="number">0.261</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTUtMS0xLTc4NjA4_291e2477-d56e-4f67-9602-c8fef5def874"
      unitRef="usd">25046000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTctMS0xLTc4NjA4_4ca3cf75-fe15-423d-a056-79532af4d2df"
      unitRef="number">0.252</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTktMS0xLTc4NjA4_1fba1323-1b7c-41ba-8202-01f73cccf22e"
      unitRef="usd">24468000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZTphN2JjZjk5ODg1ZWY0MmEyOGU3YjZlMzRjYjdkOTJjNi90YWJsZXJhbmdlOmE3YmNmOTk4ODVlZjQyYTI4ZTdiNmUzNGNiN2Q5MmM2XzIxLTExLTEtMS03ODYwOA_6290f884-e9f1-4be6-9ca5-94ab55ea9a4c"
      unitRef="number">0.227</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ2ODc_d0237915-5a93-416d-837a-f2bb0d147a31">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax liabilities at December&#160;31 consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.692%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital loss carryforward&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,490)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,328)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equity compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,993)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,236)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assets held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,669)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capitalized research and development costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,503)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(17,493)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15,641)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68,148)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(51,205)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets, net of valuation allowances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41,660)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24,624)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEtMS0xLTEtNzg2MDg_05c2e18f-9c9f-4416-a488-5329397eb240"
      unitRef="usd">14570000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEtMy0xLTEtNzg2MDg_77f704b1-9e97-4289-adc8-95f759f5eba3"
      unitRef="usd">9633000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzItMS0xLTEtNzg2MDg_49c1cd7f-cd5a-49c6-9000-49ba328ff211"
      unitRef="usd">62132000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzItMy0xLTEtNzg2MDg_d21f611a-83c6-4f88-988a-82cfcf6253d5"
      unitRef="usd">48265000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzMtMS0xLTEtNzg2MDg_b7947d72-4db8-450d-b8ec-6bb559aa2347"
      unitRef="usd">3706000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzMtMy0xLTEtNzg2MDg_9942964c-8f2c-4555-b2ad-6fb04a4bb336"
      unitRef="usd">1657000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzUtMS0xLTEtNzg2MDg_fd366d8e-f1a8-4f46-af6c-e924ebbe4c85"
      unitRef="usd">8133000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzUtMy0xLTEtNzg2MDg_3a4efa1e-0c70-4547-ba5d-64c337ba3e06"
      unitRef="usd">5298000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzYtMS0xLTEtNzg2MDg_c96f909b-8b2a-4eaa-a664-32ebb89230df"
      unitRef="usd">88541000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzYtMy0xLTEtNzg2MDg_aa722dac-b17b-476c-97a9-27528b94390d"
      unitRef="usd">64853000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxAssetsCapitalLossCarryforwards
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzctMS0xLTEtNzg2MDg_82a1b4d5-512f-4d1d-9b0f-63be2790a98d"
      unitRef="usd">26490000</us-gaap:DeferredTaxAssetsCapitalLossCarryforwards>
    <us-gaap:DeferredTaxAssetsCapitalLossCarryforwards
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzctMy0xLTEtNzg2MDg_18347515-36ff-46f0-9f13-fec979ba6106"
      unitRef="usd">27328000</us-gaap:DeferredTaxAssetsCapitalLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzgtMS0xLTEtNzg2MDg_a59f3889-b8e6-4e28-9971-6774270d521a"
      unitRef="usd">5993000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzgtMy0xLTEtNzg2MDg_9d3652ef-c9a9-4132-8553-9eda0e78e16d"
      unitRef="usd">8236000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <rock:DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMS0xLTEtODg3NzQ_222e72a9-e511-406f-9a35-0255fbf99f1a"
      unitRef="usd">13669000</rock:DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness>
    <rock:DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMy0xLTEtODg3ODM_c96070b4-c4ba-419a-8d67-aa1c07d40fd9"
      unitRef="usd">0</rock:DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTEtMS0xLTg4Nzc0_f8619c9a-7a93-49e3-b0b0-f06860d922b7"
      unitRef="usd">4503000</us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTMtMS0xLTg4Nzgz_57870722-82d4-4ea6-8c3a-843774b54a43"
      unitRef="usd">0</us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMS0xLTEtNzg2MDg_d7b83d44-327d-432d-aeec-be2a17757a62"
      unitRef="usd">17493000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzktMy0xLTEtNzg2MDg_6699a879-66e3-4eff-8bca-242495a94477"
      unitRef="usd">15641000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTEtMS0xLTc4NjA4_740860a1-c05d-419a-8e56-1408a31652c5"
      unitRef="usd">68148000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEwLTMtMS0xLTc4NjA4_151b0ba0-4da4-423f-9389-13cac2d72765"
      unitRef="usd">51205000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzExLTEtMS0xLTc4NjA4_7ca9ceea-2e30-4c9a-a63d-c093ed931533"
      unitRef="usd">26488000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzExLTMtMS0xLTc4NjA4_90639bb6-17b9-4702-93bf-e5b6d73c76b9"
      unitRef="usd">26581000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEyLTEtMS0xLTc4NjA4_1c0b2f58-c3a2-4e94-88bf-6ae8e93fa2a7"
      unitRef="usd">41660000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEyLTMtMS0xLTc4NjA4_33936ead-1199-4f2e-8431-40c94c53dc6e"
      unitRef="usd">24624000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilities
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEzLTEtMS0xLTc4NjA4_1f7235bb-7247-42a5-b215-d6c45787d80f"
      unitRef="usd">46881000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToyNjA4Nzk2MzUxMTM0MGZmODZjNmQ1N2I0ZWE0YWRiYS90YWJsZXJhbmdlOjI2MDg3OTYzNTExMzQwZmY4NmM2ZDU3YjRlYTRhZGJhXzEzLTMtMS0xLTc4NjA4_329a06b5-27ce-49ac-94de-d242849e211c"
      unitRef="usd">40229000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:OperatingLossCarryforwards
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEyNzU_6d30d71f-d727-4207-a37a-4eff9726b27a"
      unitRef="usd">7900000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEyOTQ_ae99e6a4-dec9-4307-8c2f-c8a19c0ff12a"
      unitRef="usd">400000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i2f557da28680480aa47dbaedd8addd27_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEzMTA_6bbc6e70-3970-4d0b-a50e-485c9b2870cb"
      unitRef="usd">6600000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i160e40f0d6b64250ab288482e07b4d75_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzEzMjg_c2d4b9a5-a9a7-4a43-98d1-a1114b69e63e"
      unitRef="usd">900000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE1NTY_634b5097-44d9-4e0f-89b4-70fe36c7c8a4"
      unitRef="usd">700000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE3MDM_71684ee2-99b8-45b5-bf0d-6194e2e3c947"
      unitRef="usd">100000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i2f557da28680480aa47dbaedd8addd27_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE3MjE_183fede4-e4c2-453e-b890-d4447582da7c"
      unitRef="usd">400000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i160e40f0d6b64250ab288482e07b4d75_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE3NTc_2332b0a9-7742-4cb5-a2d5-87e912660ca2"
      unitRef="usd">200000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <rock:CapitalLossCarryfoward
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzE5MDM_d8f6d70f-40c0-41c4-a7b4-e15a1521d72f"
      unitRef="usd">113700000</rock:CapitalLossCarryfoward>
    <rock:CapitalLossCarryfowardAmendedReturns
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIxOTkwMjMyNjMwNTY_ee271451-b968-42cb-be75-6ee45acfa381"
      unitRef="usd">3700000</rock:CapitalLossCarryfowardAmendedReturns>
    <rock:CapitalLossCarryfoward
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIxOTkwMjMyNjMwNzA_ce045eed-e7da-4778-aae8-9b44f1e11b3b"
      unitRef="usd">110000000</rock:CapitalLossCarryfoward>
    <rock:DeferredTaxAssetsCapitalLossCarryfowards
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIwNzc_513527ef-e5e1-4e34-aefc-17ab5ec1fda0"
      unitRef="usd">26500000</rock:DeferredTaxAssetsCapitalLossCarryfowards>
    <rock:DeferredTaxAssetsCapitalLossCarryfowards
      contextRef="i1bb5ed473d74403a9c7e22233dc2ba6d_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIyMTE_bd521032-4a1c-45c2-8290-71907671578f"
      unitRef="usd">22200000</rock:DeferredTaxAssetsCapitalLossCarryfowards>
    <rock:DeferredTaxAssetsCapitalLossCarryfowards
      contextRef="i2f557da28680480aa47dbaedd8addd27_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzIyMjk_ae40baa4-58c3-4727-85c9-820f915ef0a0"
      unitRef="usd">4300000</rock:DeferredTaxAssetsCapitalLossCarryfowards>
    <us-gaap:SummaryOfValuationAllowanceTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ3MjU_6f1022d7-e362-464c-8200-cb28d7b43694">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following sets forth a reconciliation of the beginning and ending amount of the Company&#x2019;s valuation allowance (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of January&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost charged to the tax provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reductions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(103)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(248)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reclassification from discontinued operations upon sale of industrial group&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December&#160;31&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SummaryOfValuationAllowanceTextBlock>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i6ac4cd9abaf54a7b9341f1689083684e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzEtMS0xLTEtNzg2MDg_d87a75ea-c0ab-4760-8c21-dc3754e17050"
      unitRef="usd">26581000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i3eeed6de8a694410925a55f57c53f891_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzEtMy0xLTEtNzg2MDg_e09b15bc-441c-4de6-a4fa-efcb58912e2a"
      unitRef="usd">111000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i93ccdef323fe44f7af1e2d598642810c_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzEtNS0xLTEtNzg2MDg_2a23bc52-d323-43fc-9e19-6bdce7314ae6"
      unitRef="usd">298000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzItMS0xLTEtNzg2MDg_68ccf748-96ee-4b0d-9d4d-ec3fa8a25c5e"
      unitRef="usd">10000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzItMy0xLTEtNzg2MDg_6e4c8c41-ef0e-4515-985a-465655a06c62"
      unitRef="usd">13000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzItNS0xLTEtNzg2MDg_2339d2fa-d11a-466f-bf3f-7ea28566b9c2"
      unitRef="usd">70000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzMtMS0xLTEtNzg2MDg_6437ce51-9a77-460a-9791-f9340690f4e4"
      unitRef="usd">103000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzMtMy0xLTEtNzg2MDg_5a61eebd-9348-4577-b642-a1164256e5a4"
      unitRef="usd">41000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzMtNS0xLTEtNzg2MDg_28f99fcd-7028-4c84-856e-c371064bae00"
      unitRef="usd">248000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzQtMS0xLTEtNzg2MDg_899db622-24d2-4cff-b4f9-a936bf8f2431"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzQtMy0xLTEtNzg2MDg_daf1aad4-13ba-4236-ab5f-40aecef63fe0"
      unitRef="usd">26498000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzQtNS0xLTEtNzg2MDg_a9bd0ac3-541d-42da-9c28-c187e83ca623"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation
      contextRef="i606b02a914e644578da3701cbd0d6206_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzYtMS0xLTEtNzg2MDg_785489d3-06d9-44bf-af0a-9a8fa819151a"
      unitRef="usd">0</rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation>
    <rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation
      contextRef="i095c61ae98ff46d287fc3efd88a31c8f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzYtMy0xLTEtNzg2MDg_0f572b34-4fc9-4f6f-9bde-3ceeb5687f3f"
      unitRef="usd">0</rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation>
    <rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation
      contextRef="if6af1c4c7547446db48d4eb0182e7ff6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzYtNS0xLTEtNzg2MDg_3f4ea357-a478-4318-9705-64ec0b6b96da"
      unitRef="usd">-9000</rock:ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i698a586b50514af8806a5f504ae5c2ff_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzctMS0xLTEtNzg2MDg_9b92e71a-a2fc-4e97-9243-5a57bfba5807"
      unitRef="usd">26488000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i6ac4cd9abaf54a7b9341f1689083684e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzctMy0xLTEtNzg2MDg_c2e4de7d-aba9-4499-8fcb-7aed8913953c"
      unitRef="usd">26581000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i3eeed6de8a694410925a55f57c53f891_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxMzk1NDQyNDM3OWI0MDFiOGNjZTcxZTA4ZWI5ZDExZS90YWJsZXJhbmdlOjEzOTU0NDI0Mzc5YjQwMWI4Y2NlNzFlMDhlYjlkMTFlXzctNS0xLTEtNzg2MDg_60d51e03-89b4-43aa-a5ab-7d769b42fd6b"
      unitRef="usd">111000</us-gaap:ValuationAllowancesAndReservesBalance>
    <rock:IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ3MTk_9c1d2b94-de0a-4590-a102-0d73755f60f3">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company made net payments for income taxes for the following amounts for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.077%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.249%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.539%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.249%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.539%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.547%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payments made for income taxes, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,076&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,351&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxNDhmOTRhM2ViNDM0MzcxYTA0Y2QyMGY3NzQxNzU2NC90YWJsZXJhbmdlOjE0OGY5NGEzZWI0MzQzNzFhMDRjZDIwZjc3NDE3NTY0XzEtMS0xLTEtNzg2MDg_6a87d3b3-5197-401c-8212-89f5ada214ed"
      unitRef="usd">27017000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxNDhmOTRhM2ViNDM0MzcxYTA0Y2QyMGY3NzQxNzU2NC90YWJsZXJhbmdlOjE0OGY5NGEzZWI0MzQzNzFhMDRjZDIwZjc3NDE3NTY0XzEtMy0xLTEtNzg2MDg_0fea698d-9695-4b0b-bc3c-08b3eeab28b9"
      unitRef="usd">22076000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90YWJsZToxNDhmOTRhM2ViNDM0MzcxYTA0Y2QyMGY3NzQxNzU2NC90YWJsZXJhbmdlOjE0OGY5NGEzZWI0MzQzNzFhMDRjZDIwZjc3NDE3NTY0XzEtNS0xLTEtNzg2MDg_15131967-caac-45d4-ac52-79abd6872f84"
      unitRef="usd">21351000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzMyMTE_a04a726a-0655-4270-b46e-99c94a5dc04d"
      unitRef="usd">2200000</us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQxOTA_51e69c9d-7b06-491f-868c-16e49cc7df35"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQxOTA_892536f3-e50a-4690-a6b5-4c28ddce4238"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQxOTA_a1a8ebf2-8665-4544-a233-2757f1bdd029"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense>
    <rock:IncomeTaxStatueOfLimitationsExpirationPeriod
      contextRef="i0f6bf3ed3a2a4117afd5b4689cdb9510_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzMvZnJhZzo2YjY0NmMwNjA0NGY0ZDQxODNhMjNmYTY4MjE2Zjc4Zi90ZXh0cmVnaW9uOjZiNjQ2YzA2MDQ0ZjRkNDE4M2EyM2ZhNjgyMTZmNzhmXzQ0Nzc_729b6f53-2fe6-4d21-a759-9bb0eb2608d2">P10Y</rock:IncomeTaxStatueOfLimitationsExpirationPeriod>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90ZXh0cmVnaW9uOjRlNTRjNzg2ODU1ZTQ1ZTZiZTdiMTE2YWMwOTJkODg1XzE0Mjg_c8e4df3b-fc12-4f1b-9ef5-a77e6eb3d3f1">EARNINGS PER SHARE&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic earnings per share is based on the weighted average number of common shares outstanding. Diluted earnings per share is based on the weighted average number of common shares outstanding, as well as dilutive common shares which include shares issuable pursuant to equity based incentive compensation awards under the equity compensation plans described in Note 12 "Equity-Based Compensation" of the consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Weighted average shares outstanding for basic and diluted earnings were as follows for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income from continuing operations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74,516&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,291&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income (loss) from discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,113&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(18,725)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income available to common shareholders&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Denominator for basic earnings per share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,873&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,664&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Denominator for diluted earnings per share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common stock options and stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;181&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares and conversions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The weighted average number of diluted shares does not include potential anti-dilutive common shares issuable pursuant to equity based incentive compensation awards.  The treasury stock method is used to calculate dilutive shares, which reduces the gross number of dilutive shares by the number of shares purchasable from the proceeds of the options assumed to be exercised and the unrecognized expense related to the options, restricted shares, restricted stock units, and performance stock units assumed to have vested.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the potential anti-dilutive common stock options and stock units for the years ended December 31 (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Common stock options and stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90ZXh0cmVnaW9uOjRlNTRjNzg2ODU1ZTQ1ZTZiZTdiMTE2YWMwOTJkODg1XzE0MzA_0327526f-4741-4ee8-b135-1bd6c4c1f885">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Weighted average shares outstanding for basic and diluted earnings were as follows for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income from continuing operations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74,516&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,291&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income (loss) from discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,113&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(18,725)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income available to common shareholders&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Denominator for basic earnings per share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,873&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,664&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Denominator for diluted earnings per share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common stock options and stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;181&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares and conversions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzItMS0xLTEtNzg2MDg_629cf060-4cd8-480d-b43c-34de3dbbac9e"
      unitRef="usd">82406000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzItMy0xLTEtNzg2MDg_d915ae6b-0005-49af-96a7-df850717dbda"
      unitRef="usd">74516000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzItNS0xLTEtNzg2MDg_4f759383-7662-4098-8be7-d016ab98fdba"
      unitRef="usd">83291000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzMtMS0xLTEtNzg2MDg_78b6ec2c-769d-4f12-b13e-b78f7b108e26"
      unitRef="usd">0</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzMtMy0xLTEtNzg2MDg_20e89a67-68c3-47ef-a4aa-81bd797b3cd4"
      unitRef="usd">1113000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzMtNS0xLTEtNzg2MDg_bc26d9bb-b52b-4a2b-b6ca-761f607387ae"
      unitRef="usd">-18725000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:NetIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzQtMS0xLTEtNzg2MDg_3ad42e70-9e74-4e8f-b08d-a96ded722b2b"
      unitRef="usd">82406000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzQtMy0xLTEtNzg2MDg_a109b3b7-8bd5-4483-8af3-52abdd198db9"
      unitRef="usd">75629000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzQtNS0xLTEtNzg2MDg_eb3051a8-ba26-411d-befe-d443ee0cb4f5"
      unitRef="usd">64566000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzYtMS0xLTEtNzg2MDg_f778250e-e3e1-498c-bb80-36947f0dcc7f"
      unitRef="shares">32096000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzYtMy0xLTEtNzg2MDg_f185d005-e4e8-4037-969e-f905da4f87c0"
      unitRef="shares">32873000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzYtNS0xLTEtNzg2MDg_7950e636-91e3-40e9-b3bb-c89da5842aaf"
      unitRef="shares">32664000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzgtMS0xLTEtNzg2MDg_397490fc-889b-414c-8c57-231614153b74"
      unitRef="shares">96000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzgtMy0xLTEtNzg2MDg_da51591e-d8ab-4b82-aef3-bc1aa328ace5"
      unitRef="shares">181000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzgtNS0xLTEtNzg2MDg_e382087b-329a-4433-a37a-e71228e1a638"
      unitRef="shares">254000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzktMS0xLTEtNzg2MDg_238bf571-23c1-48b5-967b-0b9d16b6e630"
      unitRef="shares">32192000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzktMy0xLTEtNzg2MDg_f92fcd43-9788-436f-a6d1-65759f8c9693"
      unitRef="shares">33054000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTphZDBkODc4MzEzOTY0YmY1ODAwM2QzMDljNDkxNmFjNy90YWJsZXJhbmdlOmFkMGQ4NzgzMTM5NjRiZjU4MDAzZDMwOWM0OTE2YWM3XzktNS0xLTEtNzg2MDg_b1763a3f-0f06-4a4c-b755-3d77e240b724"
      unitRef="shares">32918000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90ZXh0cmVnaW9uOjRlNTRjNzg2ODU1ZTQ1ZTZiZTdiMTE2YWMwOTJkODg1XzIxOTkwMjMyNjE0NTE_35b15d7e-cb71-40c7-862b-14d79f610499">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the potential anti-dilutive common stock options and stock units for the years ended December 31 (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Common stock options and stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i2e934cf5324d4c9092293ca06e4e22b5_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTo2MDUxYmJhOGY4Nzk0YmEzYjI3NWQ0YjE0OTVmYjU3NS90YWJsZXJhbmdlOjYwNTFiYmE4Zjg3OTRiYTNiMjc1ZDRiMTQ5NWZiNTc1XzEtMS0xLTEtOTI0OTA_30f45dab-4a53-4cb0-94e3-64f5dc0ec5a4"
      unitRef="shares">43000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i0059adf753fa4e0ba7720534154c39f5_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTo2MDUxYmJhOGY4Nzk0YmEzYjI3NWQ0YjE0OTVmYjU3NS90YWJsZXJhbmdlOjYwNTFiYmE4Zjg3OTRiYTNiMjc1ZDRiMTQ5NWZiNTc1XzEtMy0xLTEtOTI0OTA_721ab92e-d2c1-4224-9d49-3aae4e57a902"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="if8d1a98ebe74472893afcc5433a0f4f6_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzYvZnJhZzo0ZTU0Yzc4Njg1NWU0NWU2YmU3YjExNmFjMDkyZDg4NS90YWJsZTo2MDUxYmJhOGY4Nzk0YmEzYjI3NWQ0YjE0OTVmYjU3NS90YWJsZXJhbmdlOjYwNTFiYmE4Zjg3OTRiYTNiMjc1ZDRiMTQ5NWZiNTc1XzEtNS0xLTEtOTI0OTA_39943167-d3fd-4510-8b67-1b7aff853cb1"
      unitRef="shares">13000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzA_3733616a-0f11-4773-afb9-657560fdfd33">LEASES &lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's leases are classified as operating leases and consist of manufacturing facilities, distribution centers, office space, vehicles and equipment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Most of the Company's leases include one or more options to renew, with renewal terms that can extend the respective lease term from one month to fifteen years. The exercise of lease renewal options is at the Company's sole discretion.  As of December&#160;31, 2022 and 2021, the Company's renewal options are not part of the Company's operating lease assets and operating lease liabilities.  Certain leases also include options to purchase at fair value the underlying leased asset at the Company's sole discretion.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts recognized in the Company's consolidated balance sheet at December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.250%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.116%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.250%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.254%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,041&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,661&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease costs for the years ended December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,191&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,005&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,153&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;996&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,130&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information related to the Company's operating right-of-use assets and related operating lease liabilities for the years ended December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of operating liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Right-of-use assets obtained in exchange for new lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,008&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information related to the Company's lease terms and discount rates as of December 31 were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:67.467%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.335%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average remaining lease term - operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average discount rate - operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The future maturity of the Company's lease liabilities as of December&#160;31, 2022 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:77.339%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,850&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;After 2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: present value discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,079)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,661&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company uses the its incremental borrowing rate based on information available at the commencement date of a lease in determining the present value of lease payments as the rates implicit in most of the Company's leases are not readily determinable.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="i111a97b689604e879d56f14b17890abc_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzMxMg_8f11f290-585f-4c96-bebb-753b3fc00f6a">P1M</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="id42b3ba54fe5400f99720a70c62e6a75_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzMxOA_049f159e-03b8-4fe5-b3aa-8d655b170da4">P15Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <rock:AssetsAndLiabilitiesLesseeTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzE_f835c87c-a8ac-46f4-b2fa-c73264e2e5a5">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts recognized in the Company's consolidated balance sheet at December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.250%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.116%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.250%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.254%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,041&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,661&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</rock:AssetsAndLiabilitiesLesseeTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzEtMi0xLTEtNzg2MDg_f9a7f757-2c23-4e9b-8d5a-789f6fa42db3"
      unitRef="usd">26502000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzEtNC0xLTEtNzg2MDg_4091f04d-7a0d-4886-a870-c091ecaae712"
      unitRef="usd">18120000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzQtMi0xLTEtNzg2MDg_606e80eb-44d9-45ab-a9d1-58c632cef161"
      unitRef="usd">8620000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzQtNC0xLTEtNzg2MDg_d32ae789-dff7-49b1-8daa-66eec924901b"
      unitRef="usd">7239000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzUtMi0xLTEtNzg2MDg_cbae5010-dd25-4361-bdf1-9c2c7f3208d2"
      unitRef="usd">19041000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzUtNC0xLTEtNzg2MDg_93aa99c9-4259-423d-be7f-0374aabe8657"
      unitRef="usd">11390000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzYtMi0xLTEtNzg2MDg_0a3ecd04-fd52-4c4c-a9bc-d35c85987adf"
      unitRef="usd">27661000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjNjdjMWE2OTM4NGQ0ZDM0OWYyY2ExNjVjNDAzMDQ2NS90YWJsZXJhbmdlOmM2N2MxYTY5Mzg0ZDRkMzQ5ZjJjYTE2NWM0MDMwNDY1XzYtNC0xLTEtNzg2MDg_c2c73c52-0297-4777-95ce-53f55a3e313d"
      unitRef="usd">18629000</us-gaap:OperatingLeaseLiability>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzI_cafea640-25b4-4321-a9e9-f14088498d06">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease costs for the years ended December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,191&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,005&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,153&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;996&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,130&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information related to the Company's operating right-of-use assets and related operating lease liabilities for the years ended December 31 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of operating liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Right-of-use assets obtained in exchange for new lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,008&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information related to the Company's lease terms and discount rates as of December 31 were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:67.467%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.335%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average remaining lease term - operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average discount rate - operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzEtMS0xLTEtNzg2MDg_e4e86123-24c7-46f4-ad5c-14d1904ef29d"
      unitRef="usd">11191000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzEtMy0xLTEtNzg2MDg_9a3f2658-66a9-496d-b93a-60280155c47e"
      unitRef="usd">10977000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzEtNS0xLTEtNzg2MDg_381f73f6-f355-4d6d-abd9-9d0ebf2dfef6"
      unitRef="usd">10005000</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzItMS0xLTEtNzg2MDg_cb70c1cd-1cea-4ebf-8d93-0a06eaa1eb71"
      unitRef="usd">5694000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzItMy0xLTEtNzg2MDg_6fea08b7-271b-463c-b1f6-d00c3c2c2a2a"
      unitRef="usd">7153000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzItNS0xLTEtNzg2MDg_b2fecec3-ffab-49a4-aeef-219df5e3668b"
      unitRef="usd">996000</us-gaap:ShortTermLeaseCost>
    <us-gaap:LeaseCost
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzMtMS0xLTEtNzg2MDg_091e5e73-b181-4efc-aa3e-58df8c6e321a"
      unitRef="usd">16885000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzMtMy0xLTEtNzg2MDg_a9d9ac35-25b2-4325-898f-76efd985d917"
      unitRef="usd">18130000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpmYTFjMTU0ZTk3YWI0NmU0YjE0NzYzZTE2YmQ1NmE5NS90YWJsZXJhbmdlOmZhMWMxNTRlOTdhYjQ2ZTRiMTQ3NjNlMTZiZDU2YTk1XzMtNS0xLTEtNzg2MDg_e8658ece-c246-4196-bd3d-c17f2b192665"
      unitRef="usd">11001000</us-gaap:LeaseCost>
    <us-gaap:OperatingLeasePayments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzEtMS0xLTEtNzg2MDg_612c3097-2d47-4c37-bf55-9e0e88f62dfe"
      unitRef="usd">8835000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzEtMy0xLTEtNzg2MDg_3a6cec0b-b3de-4f53-a9bc-12ea28afce24"
      unitRef="usd">9431000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzEtNS0xLTEtNzg2MDg_70599ce3-8dc5-4467-9c77-fa24d0150707"
      unitRef="usd">9502000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzItMS0xLTEtNzg2MDg_60e0efbb-c3b3-40d8-a9a7-db252d03f742"
      unitRef="usd">17008000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzItMy0xLTEtNzg2MDg_ed8610a4-89fc-4b0a-91c4-632525b0e219"
      unitRef="usd">1084000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpiNjE5MmYyMzA1YWU0OTY0OTQ1ZmNiNmIzNTIxODRmOC90YWJsZXJhbmdlOmI2MTkyZjIzMDVhZTQ5NjQ5NDVmY2I2YjM1MjE4NGY4XzItNS0xLTEtNzg2MDg_28f01d6e-b6cc-48ab-b11c-259dae2cfa4a"
      unitRef="usd">12745000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzEtMS0xLTEtNzg2MDg_0c74e5be-4a41-4a4a-b3a3-01a45703ab55">P5Y3M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzEtNC0xLTEtNzg2MDg_7b0fa9c8-4cdc-4aad-8752-be69ccc8f646">P3Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzItMS0xLTEtNzg2MDg_b8c5c5b7-5957-462c-9645-d505ff61a1e6"
      unitRef="number">5</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTpjM2RhMDk5ZjIwOWY0MDA1OTBlZDg3NTdlOTg1MmNiZS90YWJsZXJhbmdlOmMzZGEwOTlmMjA5ZjQwMDU5MGVkODc1N2U5ODUyY2JlXzItNC0xLTEtNzg2MDg_6aaa0f6c-f912-41ee-af2a-61bae5a7ac2d"
      unitRef="number">5.2</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90ZXh0cmVnaW9uOjk5MGI2OGFhZWQ0MjQ1ZDc4NjIxMjViZTk3NGY3ZDZjXzE1MzM_52adecdf-1212-4325-afda-51ab3546d35a">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The future maturity of the Company's lease liabilities as of December&#160;31, 2022 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:77.339%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,850&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;After 2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: present value discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,079)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,661&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzAtMS0xLTEtNzg2MDg_5154829f-83ae-488f-9318-38ae099bbd95"
      unitRef="usd">9734000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzEtMS0xLTEtNzg2MDg_a1fafe19-0989-4357-bb51-f0c98582dbb8"
      unitRef="usd">6884000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzItMS0xLTEtNzg2MDg_8c91915f-49b4-479f-a7da-f3f124567298"
      unitRef="usd">3850000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzMtMS0xLTEtNzg2MDg_da64e79b-2adf-44e6-88bd-08801c76cfdd"
      unitRef="usd">2444000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzQtMS0xLTEtNzg2MDg_474101b6-a073-4870-b2e0-5c42376f9a38"
      unitRef="usd">1817000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzUtMS0xLTEtNzg2MDg_36b57a52-ad64-4e1e-a658-5c600dc9b243"
      unitRef="usd">7011000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzYtMS0xLTEtNzg2MDg_ec92b9b2-4ad1-46ee-9d6a-9032c09cab3a"
      unitRef="usd">31740000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzctMS0xLTEtNzg2MDg_1484f5ea-0a38-47f9-8568-4b80634f1ddc"
      unitRef="usd">4079000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xMzkvZnJhZzo5OTBiNjhhYWVkNDI0NWQ3ODYyMTI1YmU5NzRmN2Q2Yy90YWJsZTo1OTZjNzM1NGNmNmY0M2JlYTk1ZjU1ODcwZDQwMjg1NC90YWJsZXJhbmdlOjU5NmM3MzU0Y2Y2ZjQzYmVhOTVmNTU4NzBkNDAyODU0XzgtMS0xLTEtNzg2MDg_a6e1cf5e-1fb5-472f-9259-84c9678471d5"
      unitRef="usd">27661000</us-gaap:OperatingLeaseLiability>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDIvZnJhZzphYzFmZmYzZmMyYjE0YWVlYjk0MGQzZmVmNGExYTRiZS90ZXh0cmVnaW9uOmFjMWZmZjNmYzJiMTRhZWViOTQwZDNmZWY0YTFhNGJlXzc0MQ_7d297ae5-19f9-486b-a64e-75cf28b30286">COMMITMENTS AND CONTINGENCIESThe Company is a party to certain claims and legal actions generally incidental to its business. Management does not believe that the outcome of any claims, or other claims which are not clearly determinable at the present time, would result in a material adverse effect on the Company's financial condition or results of operations.</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NjA_b42aff08-8068-4c7a-886a-671f46b97c0b">SEGMENT INFORMATION&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is organized into four reportable segments on the basis of the production processes, products and services provided by each segment, identified as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(i)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.12pt"&gt;Renewables, which primarily includes designing, engineering, manufacturing and installation of solar racking and electrical balance of systems;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(ii)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.9pt"&gt;Residential, which primarily includes roof and foundation ventilation products, centralized mail systems and electronic package solutions, retractable awnings and gutter guards, and rain dispersion products, trims and flashings and other accessories;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(iii)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4.68pt"&gt;Agtech, which provides growing solutions including the designing, engineering, manufacturing and installation of greenhouses; and&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:31.5pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(iv)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4.12pt"&gt;Infrastructure, which primarily includes structural bearings, expansion joints and pavement sealant for bridges, airport runways and roadways, elastomeric concrete, and bridge cable protection systems.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When determining the reportable segments, the Company aggregated operating segments based on their similar economic and operating characteristics.  During the first quarter of 2021, the Company reassessed its reportable segments.  As a result, the Company's former Renewable Energy and Conservation segment was divided into two reportable segments: Renewables and Agtech.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following tables illustrate certain measurements used by management to assess the performance of the segments described above as of and for the years ended December&#160;31 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;377,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;432,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;238,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;767,248&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;635,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;522,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168,868&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;209,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Infrastructure &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,283&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,021&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total consolidated net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,389,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,339,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,032,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income from operations:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,458&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(931)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Infrastructure &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,003&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,911&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,233&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segments income from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;163,618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;133,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;142,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unallocated corporate expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(33,516)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(36,971)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(35,211)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total income from operations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;130,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96,988&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,467&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Infrastructure &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,060&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unallocated corporate expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;219&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,167&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;392,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;445,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;402,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;519,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;453,469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;407,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;193,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;212,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,662&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unallocated corporate assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assets of discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;77,438&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,210,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,214,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,212,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,182&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Infrastructure &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,511&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unallocated corporate expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,101&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following tables illustrate revenue disaggregated by timing of transfer of control to the customer for the years ended December 31 (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.099%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.211%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.995%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.375%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.995%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.998%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Point in Time&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,317&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;761,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;834,887&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Over Time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;350,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;155,857&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;555,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;377,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;767,248&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168,868&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,283&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,389,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:8pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="27" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Point in Time&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;630,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,157&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;711,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Over Time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;403,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179,004&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,509&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;627,990&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;432,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;635,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,021&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,339,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:8pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Point in Time&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,833&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;518,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;616,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Over Time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,533&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;415,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;238,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;522,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;209,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,032,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales by region or origin and long-lived assets by region of domicile for the years ended and as of December&#160;31 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;North America&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,373,907&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,318,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,018,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,988&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,389,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,339,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,032,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;North America&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97,003&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;234&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,787&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;91,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzYx_fdbedbc0-e67a-41cc-947b-5747d8905056"
      unitRef="segment">4</us-gaap:NumberOfReportableSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="i869d08be871044d49eabb09d69de0d7d_D20220101-20220331"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzEzMDA_695cd064-aa8a-4411-85ff-acbe90020269"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:Revenues
      contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzItMS0xLTEtOTEyMDA_b71fac5c-8ec8-469d-aa15-b2377b71b4e7"
      unitRef="usd">377567000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzItMy0xLTEtOTEyMDA_d2ce7aec-3957-4cc5-ba79-49a53604f0b6"
      unitRef="usd">432096000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzItNS0xLTEtOTEyMDA_1b0856c7-9d4f-481c-b9c5-93345d9600ea"
      unitRef="usd">238107000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzMtMS0xLTEtOTEyMDA_b41ea3db-cf20-4062-a647-39992182efde"
      unitRef="usd">767248000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzMtMy0xLTEtOTEyMDA_20c4a99c-fa97-4b28-9ea8-49349047faee"
      unitRef="usd">635505000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzMtNS0xLTEtOTEyMDA_db62633c-84c6-43ea-b846-4e8da54c0a43"
      unitRef="usd">522814000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzQtMS0xLTEtOTEyMDA_1e3da615-0d2e-484d-bab9-259ed3128b25"
      unitRef="usd">168868000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzQtMy0xLTEtOTEyMDA_6d3a9163-24a2-4cfb-b589-09f8cad9e69b"
      unitRef="usd">199161000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzQtNS0xLTEtOTEyMDA_76490290-22ab-4698-bbd3-b776d9698e47"
      unitRef="usd">209460000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzUtMS0xLTEtOTEyMDA_38a1b527-cc3d-41b8-ade1-3066214e88b8"
      unitRef="usd">76283000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzUtMy0xLTEtOTEyMDA_ea615313-b84f-4d87-803c-f8bd227de80b"
      unitRef="usd">73021000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzUtNS0xLTEtOTEyMDA_7d70355b-01c0-4111-bc96-d8bbcf0a8fdc"
      unitRef="usd">62197000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzYtMS0xLTEtOTEyMDA_e402c387-0ad2-4c2e-b3ce-0751e4c8045f"
      unitRef="usd">1389966000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzYtMy0xLTEtOTEyMDA_0d0cd4ae-c32b-40e8-9116-dee0ecb3dd4b"
      unitRef="usd">1339783000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzYtNS0xLTEtOTEyMDA_f918a31d-3dd3-475e-ad4c-35d67cbfc83e"
      unitRef="usd">1032578000</us-gaap:Revenues>
    <us-gaap:OperatingIncomeLoss
      contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzktMS0xLTEtOTEyMDA_57101bd0-69bb-47e8-a116-e71e5c872771"
      unitRef="usd">25243000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzktMy0xLTEtOTEyMDA_c3839cab-34bc-4a15-a6e4-4461986c998c"
      unitRef="usd">20158000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzktNS0xLTEtOTEyMDA_40a1428a-2008-4630-9f95-2bb29dd8ac16"
      unitRef="usd">30105000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEwLTEtMS0xLTkxMjAw_71cd64dd-5ac3-441c-a2c5-e69a9daf862c"
      unitRef="usd">126458000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEwLTMtMS0xLTkxMjAw_0c185c17-1285-48f1-8c86-34227322cf0a"
      unitRef="usd">105821000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEwLTUtMS0xLTkxMjAw_f772403c-26c2-4407-9e01-ddbaa2e1da72"
      unitRef="usd">94430000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzExLTEtMS0xLTkxMjAw_82ea9195-6ea9-4b2b-9777-7be024013b77"
      unitRef="usd">2914000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzExLTMtMS0xLTkxMjAw_bea3f6ca-f515-42bd-a07a-08075f8196c1"
      unitRef="usd">-931000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzExLTUtMS0xLTkxMjAw_5b6250b2-dd25-41f2-931b-ddd639a630b7"
      unitRef="usd">10633000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEyLTEtMS0xLTkxMjAw_2ecfd553-c9f3-403b-8b20-64649f19f2e9"
      unitRef="usd">9003000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEyLTMtMS0xLTkxMjAw_34d52fab-7129-42cd-a8af-7dc52047c6ac"
      unitRef="usd">8911000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEyLTUtMS0xLTkxMjAw_572b4d29-3175-449f-ad4d-7f5268b94a07"
      unitRef="usd">7233000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i60b596a3d4bd473c91a8a5d697da7dbb_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEzLTEtMS0xLTkyNDk2_543778ca-99e8-4d16-b699-960fd34760dc"
      unitRef="usd">163618000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ib1b3e591b04d4db282b65aef95d18298_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEzLTMtMS0xLTkyNDk2_f220e3e8-342f-41ec-ab99-11b09205e044"
      unitRef="usd">133959000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ic23634df90da43eba654dcbf13a1a25e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzEzLTUtMS0xLTkyNDk2_6fb2f536-6a10-4bd9-a308-650aa628b397"
      unitRef="usd">142401000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE0LTEtMS0xLTkxMjAw_982875e7-14dc-415b-8c4e-76a587734e5f"
      unitRef="usd">-33516000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE0LTMtMS0xLTkxMjAw_2408f622-0fd4-4122-b428-dd458455627a"
      unitRef="usd">-36971000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE0LTUtMS0xLTkxMjAw_ac47c971-242a-4c38-979e-f92db0801e97"
      unitRef="usd">-35211000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE1LTEtMS0xLTkyNDk2_cdb2914e-574d-4010-8d15-11eb05cd4c90"
      unitRef="usd">130102000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE1LTMtMS0xLTkyNDk2_f54eb03c-f57d-4254-b5c2-e79ca8f9f14e"
      unitRef="usd">96988000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE1LTUtMS0xLTkyNDk2_ed4478ad-bc86-4aa0-ab01-d61272f873d9"
      unitRef="usd">107190000</us-gaap:OperatingIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE4LTEtMS0xLTkxMjAw_792ace30-6bd4-4fa5-b77c-507c3b96851c"
      unitRef="usd">8467000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE4LTMtMS0xLTkxMjAw_5ed46dba-b08e-426f-806d-9357ae838e54"
      unitRef="usd">14682000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE4LTUtMS0xLTkxMjAw_5a129dd9-4539-4370-a521-1051c4b7e0fa"
      unitRef="usd">3377000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE5LTEtMS0xLTkxMjAw_8fac612e-a40b-4207-bf2c-e6fa52525d69"
      unitRef="usd">8983000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE5LTMtMS0xLTkxMjAw_547381d5-9ee2-4e4b-904d-c17794a48ea2"
      unitRef="usd">8694000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzE5LTUtMS0xLTkxMjAw_9120d614-8c39-491b-9144-6a309fe65a05"
      unitRef="usd">8110000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIwLTEtMS0xLTkxMjAw_848686e3-aa52-4ac6-bd41-da653dfcba69"
      unitRef="usd">4377000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIwLTMtMS0xLTkxMjAw_3294af0e-00eb-451d-8fdf-4f569fd78f56"
      unitRef="usd">5279000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIwLTUtMS0xLTkxMjAw_27687ede-e710-4408-a300-c72ecbebe91a"
      unitRef="usd">6068000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIxLTEtMS0xLTkxMjAw_332522cd-3a15-48fa-81b5-1ee6060b01f5"
      unitRef="usd">3150000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIxLTMtMS0xLTkxMjAw_8595569f-b09e-4f50-bfb2-caeacc018899"
      unitRef="usd">3092000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIxLTUtMS0xLTkxMjAw_d108ad6c-91a0-4c11-bf61-3a6f1c193635"
      unitRef="usd">3060000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIyLTEtMS0xLTkxMjAw_bfc7eec5-c68c-4f3a-a2c2-a5d44812feea"
      unitRef="usd">1190000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIyLTMtMS0xLTkxMjAw_1a7e7fde-886e-4d30-a850-82ebb08f7316"
      unitRef="usd">219000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIyLTUtMS0xLTkxMjAw_e885496c-af97-45c3-9894-490ef5db0f5f"
      unitRef="usd">300000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIzLTEtMS0xLTkyNDk4_c9d9a5ff-6f11-4958-8bd3-f2df971b912b"
      unitRef="usd">26167000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIzLTMtMS0xLTkyNDk4_1f072123-6f00-4055-80e4-b7d7898e3d1a"
      unitRef="usd">31966000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTphMDdlNTViYzU5M2Y0MjQxOGU4ZDEwY2EzY2E1NmYwMy90YWJsZXJhbmdlOmEwN2U1NWJjNTkzZjQyNDE4ZThkMTBjYTNjYTU2ZjAzXzIzLTUtMS0xLTkyNDk4_a9426029-b6e3-4e56-bc51-a3f811652107"
      unitRef="usd">20915000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NDU_851be72f-723f-4031-b74e-aeb26983c8f4">&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;392,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;445,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;402,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;519,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;453,469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;407,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;193,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;212,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,662&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unallocated corporate assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assets of discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;77,438&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,210,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,214,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,212,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,182&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Infrastructure &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,511&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unallocated corporate expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,101&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock>
    <us-gaap:Assets
      contextRef="iaba4a164c3c2455093d990d4759232a1_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI2LTEtMS0xLTc4NjA4_9ec9cfc9-d1b9-4499-afe0-54a93de3c96d"
      unitRef="usd">392368000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i522f8989270a4929aef98ff7b39f90b8_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI2LTMtMS0xLTc4NjA4_cfe1e409-b2ac-4ccc-85b7-f3acddd59cbe"
      unitRef="usd">445486000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ib741179ea0294bdead78b270f0daf503_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI2LTUtMS0xLTc4NjA4_88faaceb-e1bf-4026-95fb-4e7aaccd4adf"
      unitRef="usd">402797000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i6f3b83f3e41943e1b929e07ef325953f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI3LTEtMS0xLTc4NjA4_21d89fe0-b69c-466e-bbfa-acc285f68142"
      unitRef="usd">519567000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i24687447981245569bcd8a66827a2383_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI3LTMtMS0xLTc4NjA4_5e64fc82-956f-454a-a809-31739273e79b"
      unitRef="usd">453469000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i35e9b659622843179eac557f47830575_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI3LTUtMS0xLTc4NjA4_9dafbfe1-8f89-4fdb-be62-0888b7ae7b6e"
      unitRef="usd">407132000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i53a3ff74d8a3431fb702036ea2250ca3_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI4LTEtMS0xLTc4NjA4_1b2528f1-2b22-4e75-8294-345aeb8c1754"
      unitRef="usd">193966000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ia024c32336d54193abc35a7cec004b22_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI4LTMtMS0xLTc4NjA4_975ceb09-bbf8-4ff8-9900-67fb40e9f542"
      unitRef="usd">212038000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ic897e3a5a34b41629ff3e8e3eecfea5c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI4LTUtMS0xLTc4NjA4_857da00d-6cd6-486d-9006-d45b561f9677"
      unitRef="usd">216274000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i0fa156d1fd3e4bcab8e0f6b9aa80f64d_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI5LTEtMS0xLTc4NjA4_a512514a-3d3e-4a91-a65c-2c81c24d0e99"
      unitRef="usd">80264000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i79e3e4b34a52405d8524a12a7e4b37c4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI5LTMtMS0xLTc4NjA4_8cac2888-d0a0-4769-a8e6-e715864fdb31"
      unitRef="usd">82662000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i9ed3fe44794045ffb4246f6ff677f8b6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzI5LTUtMS0xLTc4NjA4_e3e5a587-7fd1-493c-b76e-0f26664c8531"
      unitRef="usd">80796000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i625af8856ca9471d8d96392464096c20_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMwLTEtMS0xLTc4NjA4_f8eb0713-0b3c-401c-a842-c3d1d9fee2ce"
      unitRef="usd">24448000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="idda8bba80a524f4ba58246d35e3514f1_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMwLTMtMS0xLTc4NjA4_0525192b-8042-4233-807d-8459f01c31f7"
      unitRef="usd">21246000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iede4e392ee2641ddba8694142f8c302d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMwLTUtMS0xLTc4NjA4_1598fb7b-5967-4aa4-8432-ae962408d726"
      unitRef="usd">28057000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i0678936455bf45789e72201128d5f331_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMxLTEtMS0xLTc4NjA4_f0817ffb-fb83-4d51-ae68-956575bb026c"
      unitRef="usd">0</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i625d1e6d332242c5948db9708e0b6766_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMxLTMtMS0xLTc4NjA4_e064c2f0-3a16-4de0-898c-7873298032f2"
      unitRef="usd">0</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="idec42e19198e484da403534f5dd6fb19_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMxLTUtMS0xLTc4NjA4_c5964ee5-5d15-45fd-9f39-ab348a7d702a"
      unitRef="usd">77438000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMyLTEtMS0xLTc4NjA4_009a174b-e58a-44c9-82f0-64b57ef96a4d"
      unitRef="usd">1210613000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMyLTMtMS0xLTc4NjA4_1b511d6e-b920-420d-b7be-803502440e45"
      unitRef="usd">1214901000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzMyLTUtMS0xLTc4NjA4_04ed4439-4c9c-4ef7-a0e6-c7098d326fed"
      unitRef="usd">1212494000</us-gaap:Assets>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i51f91fbbd7c647758b47cb9fdf2ab5c9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM1LTEtMS0xLTc4NjA4_ea92ad04-2671-4107-a21d-d75d0fbc975c"
      unitRef="usd">3589000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i4dc7346ef69e4e1ba511624a79306d2e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM1LTMtMS0xLTc4NjA4_a09cb1cd-6db5-4c3c-b76b-e34b8760b149"
      unitRef="usd">4268000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i4740c6c180af4c60ad5f27d9794039d2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM1LTUtMS0xLTc4NjA4_20aeb121-4198-4cbd-bc03-299599e8b780"
      unitRef="usd">423000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="if1f4f88295a7496e9541848b93fa5307_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM2LTEtMS0xLTc4NjA4_d897ab42-71b0-4d0d-8770-c47fd1ff531d"
      unitRef="usd">10050000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ie496b4fe1a984348a5d7984002160fd5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM2LTMtMS0xLTc4NjA4_9dbaf8be-b31d-484c-8930-121e3b03f43a"
      unitRef="usd">4182000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="if59f03e2fc244594a829cbbe69e645c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM2LTUtMS0xLTc4NjA4_b3c1d496-b906-4d43-8fc1-4c2240eb50c4"
      unitRef="usd">3313000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i8a0b557ae4974b3fb3357fac2b2872f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM3LTEtMS0xLTc4NjA4_e6814495-03f4-4a78-86ec-6b7db17c3c14"
      unitRef="usd">3177000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ie1dd39b5213b41a68468bab7bf9757b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM3LTMtMS0xLTc4NjA4_9e0e72f2-b90a-4d35-915a-928ef450b4a7"
      unitRef="usd">3289000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="if1882c0597c74faf9d216f62d9fc01ca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM3LTUtMS0xLTc4NjA4_6b038432-01d9-4bc1-92ba-478f3694e681"
      unitRef="usd">720000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="if37098dd8a084ccab533ea4afa1b06f6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM4LTEtMS0xLTc4NjA4_b7f5274b-c803-4639-bf69-6156527d18fe"
      unitRef="usd">1898000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ic31c98f5939b4f678a5d022e6ff04c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM4LTMtMS0xLTc4NjA4_97f116e8-8a40-47b8-9dd4-3b4118fbadd1"
      unitRef="usd">2097000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i23fe7c27c37d4cdfab01f615f7802133_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM4LTUtMS0xLTc4NjA4_930c7e6b-61d4-4ee4-98fc-bb73e2edfcd3"
      unitRef="usd">1511000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ief3874caed944767832e61940fb24010_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM5LTEtMS0xLTc4NjA4_9e0a127f-f9a0-438f-802a-2bc4067fedda"
      unitRef="usd">1424000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i038fe9d394e6406fb8b140f1e88cff02_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM5LTMtMS0xLTc4NjA4_27379266-36b9-4466-b774-6b0a77bd8004"
      unitRef="usd">3869000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="id44562cea6c6465982ffb41df4290cd9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzM5LTUtMS0xLTc4NjA4_8f7abd20-773b-4f9f-8559-38ff86d2bae2"
      unitRef="usd">7101000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzQwLTEtMS0xLTc4NjA4_16a9dbe9-634f-423d-bfaf-0e3293c6d4b7"
      unitRef="usd">20138000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzQwLTMtMS0xLTc4NjA4_4c0c661d-2aa7-4498-9b13-5693b0fc9a29"
      unitRef="usd">17705000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkZTBkMDgxYjkwMjc0YThmYjdhNWQ5MDQwNjJjNzY1MS90YWJsZXJhbmdlOmRlMGQwODFiOTAyNzRhOGZiN2E1ZDkwNDA2MmM3NjUxXzQwLTUtMS0xLTc4NjA4_146ccbf0-1b22-41f5-86d3-81a9849e826a"
      unitRef="usd">13068000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NTE_0818618c-e7b1-4952-b3aa-8fac262dd1dd">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following tables illustrate revenue disaggregated by timing of transfer of control to the customer for the years ended December 31 (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.099%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.211%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.995%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.375%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.995%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.998%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Point in Time&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,317&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;761,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;834,887&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Over Time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;350,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;155,857&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;555,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;377,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;767,248&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168,868&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,283&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,389,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:8pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="27" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Point in Time&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;630,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,157&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;711,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Over Time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;403,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179,004&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,509&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;627,990&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;432,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;635,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,021&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,339,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:8pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Renewables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Residential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Agtech&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Infrastructure&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Point in Time&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,833&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;518,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;616,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Over Time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,533&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;415,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;238,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;522,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;209,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,032,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:Revenues
      contextRef="i5b93ecf38b69436a9e47e1cf87f6f9bf_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtMS0xLTEtNzg2MDg_7edd6c64-8597-4c89-bdbf-fe5d443e755b"
      unitRef="usd">27317000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i69dfb26490e5474d895d2ad31f8c3ad6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtMy0xLTEtNzg2MDg_90bff224-54e6-4f96-95e8-7bd9c7757b78"
      unitRef="usd">761576000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie54708b0a142430d94d5e77598ffb979_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtNS0xLTEtNzg2MDg_84f142fa-ac7d-4375-b8f5-394228d2dd5a"
      unitRef="usd">13011000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i761c1d240aeb47c49dd52ec21d0f52fa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtNy0xLTEtNzg2MDg_4b4a938e-0b14-4c5b-b4d6-fc71fcc9fdea"
      unitRef="usd">32983000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i7d5940f4d0994a899a9621ee6a085a48_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzMtOS0xLTEtNzg2MDg_85bf2d89-99aa-4916-91af-271de1a6b2bf"
      unitRef="usd">834887000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="iabc0c22753be41148c061c9b5ff1ef5b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtMS0xLTEtNzg2MDg_461508a5-59d4-4ff5-9507-1028322236e6"
      unitRef="usd">350250000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i9e97e2bedcef4d9ea73f04853fd05f0c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtMy0xLTEtNzg2MDg_687c06a3-573d-4480-a630-ed0679de50c6"
      unitRef="usd">5672000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="icecda5027596436db26a6b91d2f54b1c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtNS0xLTEtNzg2MDg_53c6b6fc-3337-4f9d-9e9b-f5bd4e68bbde"
      unitRef="usd">155857000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i363716532bad4cd0980783a148a92cf9_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtNy0xLTEtNzg2MDg_7e535de4-1cb0-484a-b6fa-4e10b9d07e20"
      unitRef="usd">43300000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if2844c05b9d64df9a119f6ebf35fafea_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzQtOS0xLTEtNzg2MDg_70103ddf-c8de-4f02-ac14-c166df4393fe"
      unitRef="usd">555079000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="id5ef8292041344dd8caee83ec4194b0a_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtMS0xLTEtNzg2MDg_affa7a3c-c389-4956-82b3-453bcbe67f0b"
      unitRef="usd">377567000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ic7cb65f10dd644c1a1857b14b8a67b76_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtMy0xLTEtNzg2MDg_4a3255f4-2f2d-4968-b7d5-f1aaa20053ee"
      unitRef="usd">767248000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i475a1b111aa543e9bf55f6a304dd20ff_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtNS0xLTEtNzg2MDg_a5400758-5e77-4d87-89a5-d7b0728ee2b5"
      unitRef="usd">168868000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i1d74b68321404cc386e0def10f5d2cb7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtNy0xLTEtNzg2MDg_b0d6a40a-7ed2-42c0-bf74-0083f39fd798"
      unitRef="usd">76283000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzUtOS0xLTEtNzg2MDg_2ef3b644-8431-4b98-9de9-882b1c084351"
      unitRef="usd">1389966000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i92c16fe3a70f4e49b13fc1ae97837fdd_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTEtMS0xLTc4NjA4_771b80dc-a1ba-4e38-9c35-a559365c3d7b"
      unitRef="usd">28630000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6df611de3fcf4e4ea5f715367a0b0785_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTMtMS0xLTc4NjA4_a12ebb08-396e-4bb5-a30f-6fc189573ea6"
      unitRef="usd">630494000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ic78aa20b5b7e459ea9ae6c86b16c41ac_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTUtMS0xLTc4NjA4_9e10983a-0300-46a3-91b9-b4fb6e0481bd"
      unitRef="usd">20157000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="idec35ea930d04e55aeffbc908a770f71_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTctMS0xLTc4NjA4_3e8faf51-38eb-4b63-81a2-33b2554a183d"
      unitRef="usd">32512000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i971e5962d2e6470587e3528742ba3ac5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEwLTktMS0xLTc4NjA4_051bbddf-4b4e-49c3-9057-3cc5dac1eea1"
      unitRef="usd">711793000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i7692a1ee76c64f6c90276630b19f5315_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTEtMS0xLTc4NjA4_d29e7520-beb3-4c9d-9412-1b9eac542baf"
      unitRef="usd">403466000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="idbcb8892b57a452bafbb13673dc4b633_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTMtMS0xLTc4NjA4_16c5c3a1-e3f1-456b-ba78-9d67f6a4e1ce"
      unitRef="usd">5011000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6568f28f534649339a377c1457b00cf7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTUtMS0xLTc4NjA4_4fe7d038-a78a-4808-860c-aafab254b71d"
      unitRef="usd">179004000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie5c73db8e09f4d2a8adca505eed6f629_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTctMS0xLTc4NjA4_717bfa5c-fdf5-4be8-af47-ffee85315300"
      unitRef="usd">40509000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i909c4ea4d9124a3d9e46e4ebefb3a1e9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzExLTktMS0xLTc4NjA4_5e2e1d27-699c-445f-beef-5a0d7cc6de34"
      unitRef="usd">627990000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i440bce1026014d699ffb16eb70be7748_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTEtMS0xLTc4NjA4_34c40d93-ec0f-4da3-9001-ed5d29f5b3d8"
      unitRef="usd">432096000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2d7e6efe13de4a15be4a79d6df4739ed_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTMtMS0xLTc4NjA4_6511da95-e4d8-4510-aa53-dce864fe9f63"
      unitRef="usd">635505000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="icfde5ce0a2774694ab3650523d2e823a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTUtMS0xLTc4NjA4_a5e36e4d-2225-45a7-bab5-9ab68dc1251d"
      unitRef="usd">199161000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i3992f070a7424c5aa8033bcdff559523_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTctMS0xLTc4NjA4_31e4bf14-aa97-46d7-a023-24193ff4ff43"
      unitRef="usd">73021000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzEyLTktMS0xLTc4NjA4_36bbff4f-abc2-4eca-97e0-0b5796aa0d35"
      unitRef="usd">1339783000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i88799f7c82a94bc9818931b3e9053b77_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTEtMS0xLTc4NjA4_db1e8987-65aa-40b6-9134-ef7dcbb3af51"
      unitRef="usd">22833000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2c6fcadea56c411595e911bda16adecc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTMtMS0xLTc4NjA4_cc9d9b2a-8ec9-4c67-85ba-984adcb71234"
      unitRef="usd">518281000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i36f3cd03900e4cc2a90aa3f625ff95d0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTUtMS0xLTc4NjA4_8663ab96-6814-48d4-97f8-7ce3d5580af1"
      unitRef="usd">52894000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i12ac3349377f480da07ba7ee35977f8b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTctMS0xLTc4NjA4_c89608cc-c5df-4f3f-8948-c8373146b409"
      unitRef="usd">22781000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifc9dd5822864450d8ca48589af121a8b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE3LTktMS0xLTc4NjA4_beeffa26-2b39-4a9c-aadc-6f9ad5b05e02"
      unitRef="usd">616789000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6c8309ea7d5e418495864a84218dd3e4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTEtMS0xLTc4NjA4_7f18213f-eef7-490e-9089-c3884685774f"
      unitRef="usd">215274000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i57a2da47c8f042d9807e61198d85019d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTMtMS0xLTc4NjA4_019cd9ba-8cb4-45a4-bf9f-9b2582246131"
      unitRef="usd">4533000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i7e9e49ddcaa8437a8c36f414904c5fff_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTUtMS0xLTc4NjA4_e94a4ad4-ce02-4fe2-aa2b-58beb1219c3f"
      unitRef="usd">156566000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ibbdf974085fb4bc69c5ad773356c29e7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTctMS0xLTc4NjA4_00255de9-e57d-4d5c-a2b8-2ffcf341cd5a"
      unitRef="usd">39416000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i4ffdc21072b94ed2a766bc8e772c7fc4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE4LTktMS0xLTc4NjA4_fd5ddeab-04c9-4da6-9dae-62964ccfbdc3"
      unitRef="usd">415789000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i3311e70241234683b6f0365ef2d635dd_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTEtMS0xLTc4NjA4_9628020e-646c-4449-bbc6-50a57645ce7b"
      unitRef="usd">238107000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2970908a29054cbc92537cec77a27af9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTMtMS0xLTc4NjA4_03a7fc09-8c7a-4441-8a3c-5eee125f8916"
      unitRef="usd">522814000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i552e925085c14096ad706c1beea1f01e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTUtMS0xLTc4NjA4_5fdbbe9c-caf1-4a79-a2c3-71370c2ccbf5"
      unitRef="usd">209460000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="iaf315dd0aa484d9da6b58670384cc282_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTctMS0xLTc4NjA4_8ea2b134-5c7a-435a-bfc4-532fc79d1f12"
      unitRef="usd">62197000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTpkNDJkMWQyYzdjNmE0NTRkYTUxMzQ3NWE3ZDZkMjg5Yy90YWJsZXJhbmdlOmQ0MmQxZDJjN2M2YTQ1NGRhNTEzNDc1YTdkNmQyODljXzE5LTktMS0xLTc4NjA4_b865609b-a518-4621-9d8a-1acc2ee302c5"
      unitRef="usd">1032578000</us-gaap:Revenues>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90ZXh0cmVnaW9uOjkzMDJmY2MwNDk2MTRlMDFiMDgxYjM0NzM1MTU2MDNmXzE4NjM_d0a99510-cebd-4c00-867f-ffa05e6b4543">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales by region or origin and long-lived assets by region of domicile for the years ended and as of December&#160;31 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;North America&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,373,907&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,318,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,018,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,988&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,389,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,339,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,032,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;North America&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97,003&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;234&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,787&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;91,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:Revenues
      contextRef="i9be42e649bb74294b67c9df056f9b01f_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzItMS0xLTEtNzg2MDg_c0c859b1-1b34-4965-93ca-096917aa3d8c"
      unitRef="usd">1373907000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i461c6c1e72be4da18e34aa4191acd71a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzItMy0xLTEtNzg2MDg_5bbf192d-891d-49b6-9a98-16e20ab0aae2"
      unitRef="usd">1318795000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ib700003226794c949b86d5ae230de3be_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzItNS0xLTEtNzg2MDg_d32b0e8c-3dca-4e38-8432-638c87f698d5"
      unitRef="usd">1018406000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i62bcb654a5b049099051d1bd5cb4dbad_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzQtMS0xLTEtNzg2MDg_e8e8f8c7-7558-4221-ab27-4450a171c3b0"
      unitRef="usd">16059000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if1c60ecb4c5645b78964809d127f9dcd_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzQtMy0xLTEtNzg2MDg_de1e89d9-4cd2-43ac-898a-03788053177f"
      unitRef="usd">20988000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ib8e1d522438d41a09f93defccbdc4762_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzQtNS0xLTEtNzg2MDg_063675bf-86ce-4453-b12b-52ad6094267f"
      unitRef="usd">14172000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifaa13beea0624c52b316070ce0f455af_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzUtMS0xLTEtNzg2MDg_f200751e-1818-4395-b96d-78e006d07161"
      unitRef="usd">1389966000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzUtMy0xLTEtNzg2MDg_b9e287e3-9adf-4d71-b559-cbfebc1efeba"
      unitRef="usd">1339783000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i835af3b4de1b480e97688b9aaf0c9643_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzUtNS0xLTEtNzg2MDg_10bffb5e-d6aa-4d82-bb22-f8c2ee1cc4c3"
      unitRef="usd">1032578000</us-gaap:Revenues>
    <us-gaap:NoncurrentAssets
      contextRef="i70dc3acdc32f4a8193f3c0fbb04b4b03_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzgtMS0xLTEtNzg2MDg_2a5e7e41-8d8a-4709-9c41-55f217189fb9"
      unitRef="usd">136553000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="if2f0bffb079a4b5c984352237ab43db0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzgtMy0xLTEtNzg2MDg_693c5914-7e27-40ac-a5b5-e85e24003711"
      unitRef="usd">97003000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="iae0c6a40e67047bcaf2fd03193af79d2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzgtNS0xLTEtNzg2MDg_a2149604-2724-47e0-8d39-5d90a9913791"
      unitRef="usd">90685000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i395d7b63ae9245f483796e43e9548d31_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzEwLTEtMS0xLTc4NjA4_9577d9d7-4284-4cdf-ad45-0ea3c7051cf2"
      unitRef="usd">234000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i870a510a83a24f6eaab1a91af6c51fa1_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzEwLTMtMS0xLTc4NjA4_66c33e97-3790-4510-93ba-832b65700f37"
      unitRef="usd">365000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="idbb6309168014c9188b1ac31b880af8b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzEwLTUtMS0xLTc4NjA4_4f7a15c7-7a8c-4909-977c-d740136c2e72"
      unitRef="usd">476000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ib27155f7aba943d79ec120faa76c72cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzExLTEtMS0xLTc4NjA4_4c09e204-1e36-48e1-afc6-6758faada691"
      unitRef="usd">136787000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ic293a1eb0344401e83175208f94528cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzExLTMtMS0xLTc4NjA4_f821fea4-821f-4828-a32f-e8b61d258e4d"
      unitRef="usd">97368000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="iac43c12b18c341d7b786b27eb503ed35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjg5MWVlYWMwZjg2ZTRkZjdiNGU4YzE5YmRmZDQ3ZmNmL3NlYzo4OTFlZWFjMGY4NmU0ZGY3YjRlOGMxOWJkZmQ0N2ZjZl8xNDUvZnJhZzo5MzAyZmNjMDQ5NjE0ZTAxYjA4MWIzNDczNTE1NjAzZi90YWJsZTozYmYyZDc3ZjNlYjk0YWYwOGIwODE1YWFmN2EzYWU2Yi90YWJsZXJhbmdlOjNiZjJkNzdmM2ViOTRhZjA4YjA4MTVhYWY3YTNhZTZiXzExLTUtMS0xLTc4NjA4_c3eb5a0b-e84a-4665-99ce-00ab0e862b6e"
      unitRef="usd">91161000</us-gaap:NoncurrentAssets>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>128
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M\&W5^W9'L$U6![Y@0K HVUQ3 H\1>0)\OV1,['?D!0[_]Z#W'U!+ P04
M" "*@%964KX#+CP"  "]!0  &    'AL+W=O<FMS:&5E=',O<VAE970R+GAM
M;(V4;6^;,!#'OXK%I+ZJ B$/VU) 2II6BY1,4:MMFJ:]<. "5K'-[*.TWWZV
M25@F)2AOL,^^^_E_QG=1(]6++@"0O/%2Z-@K$*N9[^NT $[U0%8@S,Y>*D[1
MF"KW=:6 9BZ(EWX8!%.?4R:\)')K6Y5$LL:2"=@JHFO.J7I?0"F;V!MZQX4G
MEA=H%_PDJF@.SX#?JJTREM]1,L9!:"8%4;"/O?EPMIA:?^?PG4&C3^;$9K*3
M\L4:JRSV BL(2DC1$J@97N$>RM*"C(P_!Z;7'6D#3^='^J/+W>2RHQKN9?F#
M95C$WB>/9+"G=8E/LOD"AWPFEI?*4KLO:5K?\+-'TEJCY(=@HX ST8[T[7 /
MIP'AA8#P$! ZW>U!3N62(DTB)1NBK+>AV8E+U44;<4S8G_*,RNPR$X?)O,X8
MDI5H?Z^YI\A'@[6;?GI +%I$> $Q#,E&"BPT>1 99/\#?*.G$Q4>12W"7N(2
MT@$9#6])&(1A#V_4)3ERO-&U29)?\YU&99[$[W/YMK3Q>9HMDYFN: JQ9^I
M@WH%+[GY,)P&=SU:QYW6<1^]U2H5^4HYG-/6'_V@A$9R0WEU1W[*6N1DO=[V
MJ)ITJB97J5K+].(KZ2<LI'G+XI9LJ-8T+6H-B+I'V;13-KU*V2-3G*R6YX3U
M \9G7YA_4E(<5.X:AR:IN5-LJZM;[7K3O"W)?^YM8]M0E3.A20E[$QH,/IJ+
M4FVS: V4E2O0G413[FY:F/X*RCJ8_;V4>#3L 5W'3OX"4$L#!!0    ( (J
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
M?)-,J>JXP>&.P;#G11W^.@+#_G"X=T?XWI^WJ'<^_1D;HI$_P4-7Y&$3:ZV
M?]#$1^P#525_;MDXAN[O OF;/ WY;J#O>_U=<'>MG3&]Y'LJ%ZQ0A,,<,[VK
M/IYLLF[/ZH$6I>UP'H3&?LE>9MC2@C0!^'PNA'X:F*:I;9+CWU!+ P04
M" "*@%967O#-*[L(  #N*   &    'AL+W=O<FMS:&5E=',O<VAE970W+GAM
M;*U::V_K-A+]*X2W6.0"R;5(ZIE-#.1&]Z(%MFW0;-O/C$3'VJN'*\IY[*]?
MDE(DFQPQ3N$OB2P?CGF&PYG#D:Z>F_:[V'#>H9>JK,7U8M-UV\OE4F0;7C'Q
MN=GR6GZS;MJ*=?)C^[@4VY:S7 ^JRB7QO'!9L:)>K*[TO;MV==7LNK*H^5V+
MQ*ZJ6/OZA9?-\_4"+]YN_%8\;CIU8[FZVK)'?L^[W[=WK?RT'*WD1<5K430U
M:OGZ>G&#+U-?#]"(/PK^+/:ND:+RT#3?U8>?\NN%IV;$2YYUR@23_Y[X+2]+
M94G.XZ_!Z&+\335P__K-^C=-7I)Y8(+?-N6?1=YMKA?Q N5\S79E]UOS_",?
M" 7*7M:40O]%SP/66Z!L)[JF&@;+&51%W?]G+X,C]@;@<&8 &080<X _,X .
M ^BQ _QA@*\]TU/1?DA9QU97;?.,6H66UM2%=J8>+>D7M5KW^ZZ5WQ9R7+>Z
M;6K1E$7..IZC^T[^DXO:"=2LT2T3&_1-!H9 %^CW^Q2=_? )_8"*&OUGT^P$
MJW-QM>SD')2E93;\WI?^]\C,[V&"?F[J;B/0USKG^:&!I9S\R("\,?A"G!93
MGGU&%)\CXA$"3.CV^.$8&)X>/]QSL*'C>E!MC\ZMQ^3T==M4Z-<M;UE7U(_H
M1NV0HBLXZ/7>J@];5<GC4FQ9QJ\7,CL(WC[QQ>J?_\"A]R_(8Z<TEI[(V($W
M_=&;OLOZZA>9.(LZ:RH.^:P?&^FQ*C\^K6+B>^'5\FG?&38J"D*2'*)2&Q7Z
M03C9.IA^,$X_<$[_)SUU=%8V0GSJXR$O1";W3U'OY'YM^N"06QBBU]L.]Z;D
M&=1L!,:8&LQLT 6.(Q+ U,*16G@,-<UI(*2"W,THM*8"+9B-BOP &Z@4L$5)
M@F%6T<@J<N[>F_R_,F7W&;1K9%V4U+*BY*@> U'=5Y\RM=&W;?-4R#2('E[?
MJ$LGL'&G7T)>B$ZYU4]I+#V1L0/7QZ/K8V= I5P:S0K6JXDZ1ZQJVJ[XG[X!
MN3&V H"$.(R,8+)1%">A&4R +2_!,ULD&1DE[VR1CM6/Q8,,'R:$"J!JRXI6
M11?$)WEWN]N(F'H&*'69.:"!O4EB>$XB/_(R1U*B(L$DER=6[H95*F6=8W4&
M)N?!YD%RHDEB<@)@)B,GY)#2GFK"3DKW79-]EXFKDOI;]&SXB[J&N6# \]0W
MJ0"H," F&P"%(SI#B$R$B)/0UY>B>TL\KY*8Z,0YJIOZ0N4ID!.Q8YY$9BX&
M4!@G9HD!4'XR1VE24M@I+59W*KGJ\XF*/7D6X&TK4^U;&F8OL)(:K.Y/)J34
MS L BB1A;!*S432*9U0!GE0-=LN:7[L-;\]5&0$)^+;/ ZM*@JC(VCLV*IQ;
MF$G5X,"M<3<RKW&A3A)[14^E.*$S=UFPAZ+4!1"=\9>LW.4*(4DCOE[+ Z,^
MGK#LKYU<7BT6/H&%$CO5U4<KY4FMI:>R=K@$D_K";OEUDV7-3JD463-Y\<1D
MD0$]:*LD2J+ REPV[,+'<1R9T63C9,Z(9N)I$EW8*2QDH7R2-;%I9XY&P^B#
M2/=I9.UH&W81!U%H)2L %T0XF6$QZ1?L%C!Z4\LCOTQ2=;>_'1K]17\#Y >I
MCY"8]&S4A4],(0.@ C^<6Z%)R6"WE!G#;<M>9V/-5AX744A"J^+;.!I34[BE
MD#F,PYG*3R8Q0]QB1E)IU=EK*/?[2Z3+Y;!^>SD,(DML32)G1P*C@-R".)_&
MQ@Y,(9SO[^?S0[J3T"%NH?/+L4<5E9*//L@16\1@CX1[QZ^!OHTC@1>9F@B
M1=3#,W663**(N$712/YL)[1R^'24&SYP1B>V\C'C'8!<$,^S?  HK="+XQD?
M3"J*N%74T0$ TK/U#[S.@)JBGJ5& %B<8,^?X3CI*>)_J.FF"HHXHNE&G#+M
MHP+CI-;24UD[=.FD\8B[=76W:[,-$_V&D*$C Z9[/4?;DM7=N<Z97,JWK3K,
MS@I9 K2>U/,,L[1!.!SY9I2E((XD<TT?,JDI\IZ:FJ2H9J.3H0HJ+5);L\\]
MT -44X!#8FT.&^?+&F"2 ZQ13,.YTP:9Y!5QRRN5 >0*9ISGP_[0YWA)\6$G
M)%; >\.6259FLR$TMI8W!6 R"N8JVZ2WB%MOO9/<BS$'_-T:!PBN"(<Q-;T
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
MU068JFTHS8?2 B@MA-*BZRHKA@9-4+2^MCM3D*I-P=]S:0>5&'*F/GQB@;J
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
M,XLRO&K$SY/^S\#"M6L&(EZVP!OF/E[S(5[^-_B_6;NF,&#-AHE<Q.ZP&BE
MTW?P;U#=+8[?!SR&#Q7$&NA)$I OL5OP9=7U@4NH@&U4/45KP3WY])#T$Q)4
M@\Q7=E^V<E<+4S=TKGTM>NV^E&O;K!P=66*P$]F12A[B:F[>N8YE _4T[:+V
M*RN6%/!_6'J0)HLRVQ9GR8J+V$5@*\/J?PV5'$*2(YL"R\;2DHP-<?/A@)3O
MEV[/*#65\ '>"I#S4'$L43G )G P7R(= !E0#>VJ#4M0T!0WY-OJ?/@L:MI!
M9[N* :J]@0&$M=]&IH _KB\2@=Q"K6%_R:001M&A;>TMJR0?TCJ=RGQBW8#*
MMF3TH%LRD"=0+?,]CLA*=_XQM#U+!S>9+1D#!! R0.?C2*Q^E9;AH!PBS((^
M.XM5MP<UAC>0:YF%^8[< 6TKT0*6!//4.2!/$[D)+M.7C;TE2H0BIF50*#M7
M>5%>N!72^VM"-Q$$K:6>A_"<#=9<PZ,R0DRV"6"U!#ZR."B0K&]H,T'.,#/1
M<1EQ[61+G5O0P12\9H^$@5:T1(^V+4ZH%4WB=?8.CQ>AB+LRM>U6#L)I!0R@
M1R&P<D XEOU^@BWSP,_=O#!K#^[(00+,H_\@@KC1E8!S5ST4.&$3LZ%M( (H
MU+7U-0M#F=.#EBU'9\6VGK2$]K^5' /W#-LJWD'/.URB(((4HDL>"JKA6Q:'
MK2H&5CO=Q0)6OR'HC_Q\#0"UUZ3)=^,.^0\[\HY=TJFS=XNR59R=H(#B2R"6
M/0MMX6@CI1XLJ+IF3;Q5X@<B!+$IJX+:!$>\ !E^ ["O87R(P:! 9@B[@C\(
M%XXD53H^)S63$3&F#BC!)QVS0&X2DWC3W.+#CD",QB(1NW+*"37#7?)*P$<6
M"'8GPHL+N>H0*V2>"2548I#1 9&I8JN1[X%KLR^PH_*2$&CI!5(G.!5VN"'#
M1K '*2$<;"K@/E08(H;=@0[B0Z-;BK2ABG0_%0\\;*U"V*KA9](+[*U1'(NB
MI(W1)@D4VX'-;1!W;2<ZGJ)#A$2!E3#_M6Q#A&FJ$QQW*9-C/>!3F!\VYV1$
M E)M\Z=]1>[<=B(BMN 8$@W(GSN%DQY22TL?=7 <H%<CB\)Z8I14@KGA>P)^
MKP?RPL@O5[X9E=$N8"S'PQ/Q4RYLG9S=OOY%<&(7?Q# 1G.\UW G<G9?>O4
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
M^8>Y%LI#*CE17$2O)\57(BF"UK:EW#&!%2Z>4!S$IL$%.#U]>MUC;UDE82F
M6KEQD8Y;U<!4JO^QNQYKQW&F5=?H[9?TXG4^\.#SGZ<5C;%!D6%$@G>.,2R]
M21L'^BGSTXN4X:C]319(T[&:]NH0D/;%<0]#,>>(I9Z4@V5UU-.55Y[EAX4#
MU,<7+*=!J*H"2"G6+H_HP3ZR4X1GLY!H;.QRO[D:2C?NBU:(H3>%K?GKUAJJ
M3=XEYLHSM[3D=8&?$=;WMR<2/1)^X/A'U4TUFQCI2:%/>ECNZ*,I%EUUU&OE
M$ET6_L50-AO^$YH1<G9G\OF4-MNZO77ZIK(F(]G+:#I4M/]","D.OZ<AHN-J
M!WY8.FE#W26"/-WFK?"GT+?E9R/S B%3,;G.A:8B>D*^QA#2=YZ5;'(722*?
M=LU^O(NO9*7A+@<0Y*V+(KY*5-SU_@6].%)R\3K_0P9MTPX:V86=R"!61'60
MJ49.%DU2>F(TSR'3%+I1^J1HQ)6WALMV7.$4+,^!MA"HEEJGMEGV1GITJI!?
M6E,6:#:LI;><.1?;G1WDL1[:_X;>SU0>[PS#COZ-A!BXC#E%F!_ZHR"/LC_F
MLG&( >A/UO#?3VAZ^;LNZ:J)?Q7G4OX8S'B[_$F=W_EM+HK&EGCT=/[]DYE$
MU?%+WV[Y3\,LVKYO-_QQ[2R.B6[ [\L6*85^H072WPIZ\7]02P,$%     @
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
M+)!-?VHF6JSKGA )31VF'F;4TE$: ]I/!86YFY@#VI_$^ ]02P,$%     @
MBH!65H_Z[>VW P  +0@  !D   !X;"]W;W)K<VAE971S+W-H965T,3,N>&UL
ME5;;<MLV$/V5'3;3VC.,>2<E5]*,93NM9YK$8[O)0Z</$+F2T)  "T"2E:_/
M M2UM97V1<1ES\'976!7@Y547_0<T<!S4PL]].;&M)=!H,LY-DQ?R!8%[4RE
M:IBAJ9H%NE7(*@=JZB .PSQH&!?>:.#6[M5H(!>FY@+O%>A%TS"U'F,M5T,O
M\K8+#WPV-W8A& U:-L-'-+^W]XIFP8ZEX@T*S:4 A=.A=Q5=CE-K[PP^<5SI
M@S%83R92?K&3NVKHA580UE@:R\#HL\1KK&M+1#+^WG!ZNR,M\'"\97_G?"=?
M)DSCM:P_\\K,AU[/@PJG;%&;![GZ%3?^9):OE+5VO[#J;)/8@W*AC6PV8%+0
M<-%]V?,F#@> 7O@*(-X 8J>[.\BIO&&&C09*KD!9:V*S ^>J0Y,X+FQ2'HVB
M74XX,[H32Q1&*HYZ$!@BM,M!N0&/.W#\"CB*X;T49J[A5E18'1,$I&0G)][*
M&<<G&6^PO( D\B$.X_@$7[)S+W%\R7?<6\,-UV4M]4(A_'$UT4;1??CS)9<[
MPO1E0OM&+G7+2AQZ] @TJB5ZHQ]_B/+PYQ-RTYW<]!3[][)Q$ORRM+L/GVX_
M/'U\N+M]A -V8 8HUMA,4%&\H93TS+3!"N04S!QA*FMZKUS,X(P+6I$+S42E
MSR]=9NQ/! ]L15?1H.*LAC<019$?]0H[2C(_RWKPF1[D6R[>MDJ6J#5$A=]/
M4\C\'FV^XX+3O:U@)F6E(2W\+$X@Z?MQEL,O2I(]WV4O*G(_SU*(>J&?%S'\
M9NDV3FHXR_VXGY[#6>JG>78.3]*0(G[@+FDJ0C_)0S<B\[" )W+S6C8M$^N?
M-,S^<>*$U4R4-E)T8Q16BY*D3M;[0ZD@ CY;OWR0$RUK- @4(] 4.&CDT@9O
MSV=W4!MN ]:!*P(H>M+63E#YI9I:\Z]L4B,L6;W ;2KV'&9.:>OTM%*Y;%%=
M<V"J3%S;J3GRRN95UKQBUGCC$KAJH2]< /9Y-N[DKCCSK]9Q6S"YL2Z74M'[
MIM)DYKP[8A.&_QL%:V[A:V1* ]JJ<70/7[]L]!/"&&=<N(!M?7D#E/,P=-\H
MC^B;T!U(X/:_:\)GZG :(?*S'AT699!D&3R6BK4MR3M.H23U"ECU%Y5FZDV&
M+G6_@#B%)$UL%3S6EOM1T?^7QI<*17!0PAM4,]>H;/X6PG35?+>ZZX5770O8
MFW>-]#U3%"4--4X)&EX4F0>J:T[=Q,C6-82)--1>W'!._1R5-:#]J91F.[$'
M[/XAC+X!4$L#!!0    ( (J 5E;$5 %D! ,  )H&   9    >&PO=V]R:W-H
M965T<R]S:&5E=#$T+GAM;)U5;6_;-A#^*P>M&!J B"2*4A3/-F G'E8@R;0T
MW3 ,^T!+M"54(E62BIM_OR/EJ.F6>L,^2'R[>^ZY.^K1_*#T1U,+8>%SUTJS
M"&IK^UD8FK(6'3?GJA<23W9*=]SB4N]#TVO!*^_4M2&-HBSL>".#Y=SO%7HY
M5X-M&RD*#6;H.JZ?UJ)5AT40!\\;]\V^MFXC7,Y[OA?OA?W0%QI7X812-9V0
MIE$2M-@M@E4\6S-G[PU^;<3!O)B#RV2KU$>W>%<M@L@1$JTHK4/@.#R**]&V
M#@AI?#IB!E-(Y_AR_HS^H\\=<]ER(ZY4^UM3V7H1Y %48L>'UMZKPT_BF$_J
M\$K5&O^&PVC+,&(Y&*NZHS.NNT:.(_]\K,,+ASSZA@,].E#/>PSD65YSRY=S
MK0Z@G36BN8E/U7LCN4:ZIKRW&D\;]+/+0F-_M7TB4+1<6@)<5K#Y-#0]5M[.
M0XLQG&58'O'6(Q[]!EY,X59)6QO8R$I47P.$2&YB2)\9KNE)Q&M1GD,2$Z 1
MI2?PDBGCQ.,E_RWCKQ.&/U9;8S7>E3]?RWU$9J\CN^]G9GI>BD6 'X@1^E$$
MR^^_B[/HAQ.\V<2;G4+_'YTZB?<ZV^+^YV)S__ [!KE9W3T06-U=P^:7#^^*
MV\W= URIKE<2PQE0.^@G1OT71F(J);> O1/=5FCL'Y0*OV1C1>5<;2U@IUJ4
MA$;NX6TC<4<-!@',V<QWVKUBN'&0[FG=J^DPY*/H/($WP,A%Q/R8)0S60]-6
M#NT?EBPA+,Z 49+2#&YY66,I]-/?Z%*:D)PE$%\R$L4IYBKQ)@RC>"!!!-QC
MG0S$"8FR%/D1>IE <;((!/9:H0_-4Q+1'&@6$Y;E<(- ,Y2D<NB&EKNB5 *[
M4#;<AWL;7Z2$,7:&LXR1-$_._C601 5_ W%TB>:N*I<9R?,47KMYX0N]Z(3>
M>U4TV*%!VE$ZIMU)>%>CWGPQ'U7[ENM](PVT8H>NT?E%&H >E7!<6-5[]=DJ
MBUKFIS7^/(1V!GB^4\H^+UR Z7>T_ M02P,$%     @ BH!65ESS5TS5#
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
M^1(@^(&O/(X!>J\1D:C.9H+OY5(EZZQ+W0"G1>RW6CUEVSBIEWGRU--*M%!
M&IIQSBFT3;E)S9S2""3JN,1ME(S256V%'P_9Q+H(9# (ZM!^4HG'5\0S2[+4
M ^YT=PWS_JHF;QNTMR)L3U_7,(/;NPBEYO1(?_=)>SK*ZL7-Q[9Q#94_=[0\
MJ(>KBO]']G![6[@'MF_W:0,_>2_W2;N"EH<_=4?P4#X=#L)N[_^,NL&H??*%
MVG9^4Y%I[^I=4MN(]O\B?CLX#7?X[3 8CFZEM^!:@\%1?CL:!.%PE]\.!_OY
M[6C0:_#;<- +3D_'=V6XJ ;!9#2^$\4]F)B_$++;"R;]%MM]O^8(\-_IH$%P
M#_#@_C (P\:PER ;F"Y&033NB>\YH5-#%_K$4M/D>L,:/"N\!\^"2O$'<M%E
MB8HQQRSDB&JG'G?\14^<6H3)S(H5GR^9M/3LG%. 6=(!VI^J'8HZOU)UP2X6
MH%?S!=*E*Q#/&;%M/4?^ GSY1(H"F\"[83.92="?YO. $YD\A"NH]:C?G7PN
MEN$==XAD-"A=Y=@OB\X]_#!G>,_2 \"^C0O#>!T>QZLKIX13:G?\2?I6XL6O
M<XQ%U-&C&3CJ!ZG3J;F&L=P)= [<]7CVE9U<PN<>50VBO/^=GF(\+L.!3)ZX
M(<%L=L02\4FY80/]NJML;L&>5NT.^(U&GX\FLQ/O N!#/O["GD(]%-+C[N#^
MD'ZMIK8D'(7]!V/ZE0+VQ*4_G/"T"' FR%[(5&/Y7*.-19XM&H\/;AC/6"NH
M>F*T_005*D<?-7^G@=Y1I_/D=B /QD>?YWTF(.^H[MLYZORNL.GIS=.% F7E
MGEPI/EVJO8 AF7^"A[L(]Z2Y6C:EO:-GOS*M&HF\L'I6SF&+HFIM4G^< %3R
MHWQ^*'0#NI*YG?C:U?*OB:SV,=0GJA-1-[I_5/U#YCZH'EXH8(S-C/C6,Y)+
MOQ7@;7$7=<+?]&7A0N8RT3*OCX/66!&,E28+XB>HEMU.F,N)5#;K CS\(_CC
M C02X(IK"D4PHSZ'/G4^LQ),J.27"]:'$4SBJ^,#8^<R1W<S@Y>KKN8.E63<
M[==^WSUD\K[XPE&V'V'M%OBTF64^"EW[V\+/T OFV^U>@R0&AVIML"=)<)KW
M.WFHP6P<-WULKSD^W>DT'R,,^^/QDUN;S6 \Z!WK-?N3H#<:58UE7%K+>;_N
M.8?1I-V&1D%_$NYK0]'ZCD>--G04!>$HO&L7.D'?U8O^MXY"&AO>>IAX>Y?]
M:0%YI^;\'NA\4*\^P7ZW6_7-W3 (QV/1KQ]%;7KX2= ?#,50/$41.M['A_0,
M$7U\2&-K23^:_"E1"E4TB DMU^N/Q'"KXS\%\@_V^U70O#_\$I5/SXR*FKO4
MW?;46%]PG"CS1-FMG&S5E4FO.-8!"5W0JQ],"KO[UMLZW%\O6R_&K=6T<? :
M4T[!UP7S _Q],G7N"=6@B=65HL);\L-$CNNFNNTC]\8Q=&SH@12S2=I?DU=O
MK]!U/B&1U',W7M+@,X.*+M*!2%X8:CN+9BUA<=4[(?R:H:]/U4//K0<7& !]
M.'4V'-)6F%\R0;J@'+NAU8WQ3VL-O3ULBO-AFRIBL_XY04XJ<>)35?'DA$I3
MV'WM\_DMESB5^N.;.9T'R=1[7R89HI!>=.4,4+W6XNI\U"(>('=%%3F01\5'
M-HP]9L[!-%0S+1^!.X^2=S(/OYJ*?Z%_,'W1VF8^FXW&^/SZJTD41M_0^5Q_
M ,BU+=]GN-=TB"1S.C@5_2#J]ZJ8;X9=VRY:[W0<X9/F(#<$D]% ['O!]Z3Q
M\C52UIQ?,2?'E'GAW\->7UV_Q7[N7][>#/>OP/\@+=HD!US,,+77'0\[POK7
MROV/PBSY5>ZI*9 ?^>M"(<-:&H#[(+!%_8,66+_;?_9O4$L#!!0    ( (J
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
MT6QHMZWR^_H T_;_3N_A66X+DN_'7O77C8OM5*X#&Z/=JM7K/O8 N]^_$W<
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
M,FH)5UWB50_!%GQQ-K4AV)R7"X5!PA$!WL^L#<T#"=C<I-[]#E!+ P04
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
MLT'/ U45Z&I@Y,X5Q;4T5&)=EV*5HK("M+Z1TAP&UD#S2IK\"U!+ P04
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
M_2ZO<0X=<4\=LL@N.<!H:/BG\;O@J8Z8(U_3$GY0W/Y-DWSR^0WB$CE,QJ#
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
M6%(=P[Z_N[WMKBE &+80/_+@V..0L][9W0Y(Z7J%I+KS@O[1H^)OI?9?[ T
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
M J/*!5L)K@D339RZ\5D/#OGA>"*G.& _;@HN$R9>T'F-\/L5N8&&H#7%KI,
M'L>:H-BL5GNQ,N6(<0S?J&/X^H'SSSPMN>^2*=JT6X'@:!&K>2[_$HW7,==Z
M18CBF2K)$%\SV..C$RL0 CR;<:F=5*0A)5S1"U/GUE4+5H/A13;%SIKE@T[6
M7X5M>VDL.!(Z%2+?J-2U('LDSQ0YYVK/LX(;1.">(<%FIV)//*VB3'!3:E*S
MX?UAA=(F2BX"#O[[K*M05VUN0_>J.+=%\M!Q@RH-A)BCUR&M0;BN\3J.*7^&
M4BSD,X4C< F&RA8"!RP:C]E=_@S,*8U0-&NJOF;8.#@[.6</V] 9!I/)A @>
MY&-7@:MN<",Y*[Z7LB 6\ )'H[!NR A:BO!6N6 GDU/8BM7:U8;E^5S"ULJ0
M<1"%(_;G%O >AB-H'QZQ+\H"*GQ;#.!=,!Q'[-/.TFRB5/"50\P!.QN-Z/%Z
MR85!>#IA]RH_KD.@-KSIPNEL6%FUFQ,.*'@P[1Y.T@/XVY&HC,?HMJJEDM68
MOYPLT)'9K!?_W#.488)FM2YH/*V:JE;,!KS>>$CA3]C:1E$)SD^&%-!A,(K.
MN[DD6P_8(6 RGAS1U2@X'>%J6](.VK0=L%]_.8_"Z"V[G<V$9VW'5:Z\JE**
MO8#MO+!99 %F=3!K+)M-Q5YD>G+-J%G_U6R9R1S#P7$*<[IP7&N(= PX5K/C
MLD,HB"G-&$URP"BIV" =O3EK;#!89\"H76XY7K18J-Z1KF>DP2%L53_=8*;J
MZ0[>6\>DZ_24!VK5.1/&RLRU% ^"0LL80>;)5QQ:*ORM456PH\_ AH/PI#_$
MZ29-Z=62FS9223MMVJ5(H3[SIXQ7R*WHCIR@T<(Q==M7Z][LB*HJ7 (W)A!Q
M5,]7:YW26/P0$ESG:2<HWTNVAW<#@V[TPPQ998<H@S>#*;D%H5(E?V\FVW6,
M><C9!S'5&,97+!JY:(3KDRA\2[P6J^)OI(8F\+L\0<8P\*:=L;KJ>,D/.VLU
M!))#^R?DC1G6E??9VXWI!/4%3) IG>C_@+&\I\X.7 S[CI@*.E:(Q*7N8'1>
M8RMPZJ1QP:=QA9N%+W1@<-0@D. *V2A9(-J7G!_-UG /<!U;_N(YSND9MGI,
M.?T*WB+PTV<)TA?S0KIFU(QSOEB<EP%)\&$_B";]\?9J<)-$IV(KI&Q-(4V]
M2TW3=8Y3SM(-UFZVP,SS#2'R#-"IKYDJ-1AV_3@W]'#O1,19Y 94!&16TJ2N
MUF#6$6E@.+Q=%QG6%=2<>#K'DST>M0-86]8_#[C-07@GU,!,55V:5M'Z48C(
MBXX-AGH XFQ<GJF8MIMB''9B2J*C/-?)KI_>LZ=R:E4A8X3E]!C-TW6]:/CV
MT>MM"/U#8^Q3:ZPKH?#M+D+H.UEX?U?;2(FK34_<MZRD/BU4XSQ4=<XVKM"G
MJYK9=L28J E3M%$.86LQ;F7U7>QP,LI;U'KR98=4/T?^R+HK?%.!S* #\!<:
MA; Q+9,:8TT*6M=@QPY)P0_G'U<W/S4 476L34'UR.+GH$E(8UQT'DS"T\Y$
MU R-]>KP+#B9C%@8G@;(%_M43W<=<O '5>/.=DV+:?8')^&$19-@/!RVN:Y;
M7!44RE6]H?[%:'WWOZ5@S5?H/YNXV6T,$Z(C:D3_+'$&'@T=-0^W-"$J%5#*
M['A>2DH !X*<J_"T1 D615I/=TWYNR\$:.(:S(O5*V\N2?HL#*3 9BKF[I>>
M@Z@S5N3=MN#V-@VW2_$UJ]/R.9>YGT_ZDT;._V7 <'/[,_4:BY,FKI.]'ZE^
MJ@'G0#X)DM93*4<G^(IGPDW8K[\;="S:]MURT/GHG D]=Y_6B61!)/[[<_.T
M^7I_[3]:M\O]I__?N9[+G,ZW,VP=]L].>WZ.KF] DNX3]E19JS)WN1 \$9H6
MX/U,H3%5-Z2@^9_&U7\!4$L#!!0    ( (J 5E;B7.9K1P8  ) /   9
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
M]KDY]J^LG;A_J]ZZZQ_N46(&U? T[7>8]N\_/[%JY=Y<4V7Q@G/#!9[,0I,
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
M6=!7Z([N6-=JV#O $1'/#_TX[*1VRWZ+K"B83S9<HQV/[-Q,3O3!"KW%N#\
ML $7XTHV8F /HDO9=?L88P_Y )#8U9IJ&O8:T.80Q@X%,1@K-W;V),!XYYQ_
M;/N'T>%$4N?@ ^/GR'%X"&G;EH/9G.;=]=NJ:+%7IXW>BK965)"*MB9+B02G
MF+Z&CVIVCD3H1EQ$O@^":.3]$4I'<.KAUG<(ZJXA\G!>(\YL>1-L^^H,Q:_;
MTC4B,&7K.H>^[M8*>UQT*+?8K6'#6KJ@.4RM)(KH:33%PUAG]@R>'4GC6M&1
M&[DA?T2Z/6 %MNHPVT?9[!;I]H5':9H+1H=RS0!/OPK7&);\%6 ?!K5^H-5?
MP#+J;W@4S/$\^BHP3TW?2$+JNH6'#C4>QNW=GX@&K2U':*?:HRA&E3FP^O3H
M0=G>.';CH<QC%Q(@"&.J;@"/SC1:N,]!FO G\L<6.N]ABZE%ZTY)N_@\.$DY
M$E*QNH<UAYRA21T4>!JOUP*-(YT:T5:]U)\4G7V@B8/=Y 2T0K:EBNUD,@3I
MS8I [LKZ'#3 #;7#_L$5*S2&NI+B5MK^%*1SN=.X.U<Z/)LFR=*:T4P[819W
MQL*\@*:5E'+':;W47D/DZ&&/.+5R4Q,\B7\><<]QY-@.WG380YX9'_C 2YU"
M17\:POG+Z_?UK>\EV<$8TVP8A>@Z<TR5X\BOU+6NF%=(,_#9% 4CGW /M?C!
M'C3W"WOCU[+D89(I[N^R:NE@B_J7KF/B QMNMS.L9]&_;61]/50]UQL,VT5L
M6;&M0O/[O@<R6JB &KT9=7-HHM"PO5=Y"8SIM<Z=MD^>"[0[VNITA4COB]!U
M;=K=?K=,76VV[T1Y/YX#WK6LK*L+C_8?,[2N4_O'.X'3OG5\X(HQ$VUE1P,[
M>;_EX[W'^^7^F'6(?7\F^HV'=^_Z)5F)A^LZDH?J=$Q%IU-\K,2[_,"+DN K
M^U*Y0VSO]!9I :XX?<#EJ,':=GD'B,J:X&K'C89M5U876M9:/2#Q/M:<R51!
MF29I8TST4W/ F)( Y5&-[04/BS%+K8AVP(L8PXIB3'6C:!L'4F72X/WS,"DW
M;5EPQEJ'Y&OZ.C R_F]V6&D$Q68#S%UO1"G;*D?'1Y96ZG8@#/CJ3R8G!$,6
MV.5C%C%+#@*VNB/Y*]6H>@N"'"?[/J_;:E39!ZKGLZ-1-[[_9C!M0D?Z[WU&
M(K>Z:53QV'U<](!?^@:#=*3.:G0N0WO"4MUU.V5K#6UR%74G("Z*U>9^9S"0
MII9P0YEW/5C/PJ'G$.MZ\[YL]!@H=,&K;^2-XI9B8ORHUW;=+*HS?SM\8#;7
MK&$@-0<FY_.X@FH1B>V<[!*-OQ55C7OKC*RL*77!\@Y\S7@(W(Z[R"-Y7K<L
M""$%W%A+;*)ER0X;Z7C<,#W995%!J>BKP:]F+Y4/MWJA[*L5;7K&.'%]^!-L
MXHVC 8$4C*E=I#LIQ% ;YRTWS"A3_**OEA.GC0QPG?9\.+@DJ4XBE]9)P^-L
M<8>#S.ZE!DR[7',[B)*2F8Y)*/6I2JQ-6Q_ZNG<^^O*Z52A0]'V9$[UJW$?8
MX>GP"?N5^W*['^Z^?_^"^J:A0:G6F(J-8G(B:O=-V=TT9L??<5>F:<R6+S<*
M)%S3 +Q?&]/T-[3 \&'_XK]02P,$%     @ BH!65O7+)MZA!   I@L  !D
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
M5\03-4^@]X52=GO#"_3?;A?_ %!+ P04    " "*@%96*[DFXML"   F!@
M&0   'AL+W=O<FMS:&5E=',O<VAE970R."YX;6R=54UO&C$0_2NCK=1>(A86
MTD8I(/'5-@=(%&A[J'HPN[.L%:^]M6<A^?<=>X%0*:%J+^NOF3?OV<RCOS/V
MP16(!(^ETFX0%435=1R[M,!2N):I4/-);FPIB)=V$[O*HLA"4JGBI-U^'Y="
MZFC8#WMW=M@W-2FI\<Z"J\M2V*<Q*K,;1)WHL'$O-P7YC7C8K\0&ETA?JSO+
MJ_B(DLD2M9-&@\5\$(TZU^.>CP\!WR3NW,D<O)*U,0]^<9,-HK8GA I3\@B"
MARU.4"D/Q#1^[3&C8TF?>#H_H'\*VEG+6CB<&/5=9E0,HJL(,LQ%K>C>[+[@
M7L^EQTN-<N$+NR;V,HD@K1V9<I_,#$JIFU$\[N_A).&J_4I"LD]( N^F4& Y
M%22&?6MV8'TTH_E)D!JRF9S4_E&69/E4<AX-)Z8L)?$MDP.A,Y@835)O4*<2
M73\F+N$#XW0/-V[@DE?@.@G,&:%P,-,99G\"Q,SM2# Y$!PG9Q&GF+:@V[F
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
MEM;)3WC)'[W;\\]F7;F^=SO^N#4E7"/=@._7#JFF_D$+Q!]2>_-_4$L#!!0
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
M?JA= NTOE;)[QQW0OZ?%7U!+ P04    " "*@%96<$!&9*X"  #R!0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970S,RYX;6Q]E&UOFS 0Q[_*B553(Z$"ACPT
M2Y"2;M,FK5+5=MN+:2\,' DJV)EMFN[;[VP2FDDT;_#3W>_^9W.WV$OUI+>(
M!EZ:6NBEMS5F-P\"G6^QX?I*[E#022E5PPTMU2;0.X6\<$Y-'; PG 0-KX27
M+MS>G4H7LC5U)?!.@6Z;AJN_:ZSE?NE%WG'COMILC=T(TL6.;_ !S??=G:)5
MT%.*JD&A*RE 8;GT5M%\G5A[9_"CPKT^F8/-))/RR2Z^%DLOM(*PQMQ8 J?A
M&6^PKBV(9/PY,+T^I'4\G1_IGUWNE$O&-=[(^F=5F.W2FWE08,G;VMS+_1<\
MY#.VO%S6VGUAW]G&S(.\U48V!V=2T%2B&_G+X1Y.'&;A&P[LX,"<[BZ04_F1
M&YXNE-R#LM9$LQ.7JO,F<96PC_)@%)U6Y&?259[+5A@-]YAC]<RS&N'RT0YZ
MM @,1;!V07Z@K3L:>X,6,;B5PFPU?!(%%O\# I+6ZV-'?6MVEO@1\RN((Q]8
MR-@97MSG&SM>_ ;O-4T-OU:9-HK^B]]#F7:<9)AC:V6N=SS'I4?%H%$]HY>^
M?Q=-P@]G5":]RN0</7V@VBM:>@I9PL +#<D]"QR6VY/5Z]MS W3EV&2HZ-HA
MEU1^VF!AE9@M0BEKJN-*;."R$K0C6\U%H4=S]T#V$\&CX@61!N@7$$VO_6@:
MVMEL[$^3,=Q(348$PY<<M;:!LJJF!#8:DLB?Q@S&B9_$4WB4AM=#7 V,A?YU
M2/&3T(]F#+Y9$K=2N<BM:@6%;#-3MB> RY@$3$9NC&<C&+@/'P0UQ@M@T=2/
MQA,[BR=^DB0P],K!21TVJ#:NVVAPU*XD^]V^H:VZ.GXU[[KA+5>;2FBHL237
M\&HZ]D!U':9;&+ES59U)0SW"3;?4E%%9 SHOI33'A0W0M_GT'U!+ P04
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
M3%.9]JW9M_8O]5G[0-T,;Y_Y[ZA:<MB'@BU@JO<B@0-'M4_GMF)D[9ZK<VE
MP*Y8,-@"R@Z _H649EVQ"_3_7TS_ %!+ P04    " "*@%966+>08"8%  "G
M#0  &0   'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6R-5UMOVS88_2N$-Q0-
MP-8B=76:&'#2R_K0H6C3[6'8 R/1-E>)=$FZ3OKK=RC9LM/8:EXH7K_[.:0N
M-L9^=4LI/;EK:NTN1TOO5^?CL2N7LA'NI5E)C96YL8WP&-K%V*VL%%5[J*G'
M/(JR<2.4'DTOVKF/=GIAUKY66GZTQ*V;1MC[*UF;S>6(C783G]1BZ</$>'JQ
M$@OY6?HOJX\6HW$OI5*-U$X93:R<7XYF[/PJ#_O;#7\IN7$'?1(\N37F:QB\
MKRY'43!(UK+T08+ Y[N\EG4=!,&,;UN9HUYE.'C8WTE_V_H.7VZ%D]>F_EM5
M?GDY*D:DDG.QKOTGL_E#;OU)@[S2U*YMR:;;F\8C4JZ=-\WV,"QHE.Z^XFX;
MAX,#173B -\>X*W=G:+6RM?"B^F%-1MBPVY("YW6U?8TC%,Z).6SMUA5..>G
M[XRI-JJNB= 5^21KX65%WFLO]$+=UI+,G)/>D><W B-W=C'V4!J.CLNM@JM.
M 3^A@''RP6B_=.2-KF3U4, 8UO8F\YW)5WQ0XFM9OB0QHX1'G _(B_L0Q*V\
M^"DA>.SZ:^7*VKBUE>2?V:WS%H7T[[$X=%J2XUH"N,[=2I3R<@3T.&F_R]'T
MV6\LBUX-^)#T/B1#TJ>? =9J#:/-G%POX8%T1&ER+:R]5WI!9HU9:Q]6=]X>
M\V!0QW$/;I:2E'N%/@QW2D6O=+$+,5BDW7,OA75$AHH@R*=L;J5%3LE&(LS"
M85\-ND#=M3+-VB$W[NP<%:KEIBU%=)VJI/9*U&2V\+)<(GES*Y"A=>E#NFZ,
MQ]J5J(4N(=4?:FJK)R*_$S;A-.4Y>CQ*:9)R](J$9CQTL"_+"W12EE">3\BL
M^@^8!"FA,+PA*ZO@4' &]/)MK9P*5 .S.4WB^(P\^ZW@C+\B,8_[/M88B\X(
M2 64H0%R:Z4N[PDJ2SL ,)#5<T83ENP%L"+?"V"4\_QLR#&& P7-BJAWJD@I
MB_G.H91%=))P,@M&6^2@3U!O,<VBI!\]G-T'X70,R.3(\=TWK/W*_30]<#^,
M#^/Y/*91,1R"D+X0A"B.VMQ.:)1F(;<Q32>3A[GE-,YB,@##M(=A^F08]K%]
M1"G'H#<H]SCT>@5JKT!TG%6B")4+5 Y# MXZ/ 50_HRHQW%[7$SOK'$.#I7K
M9MW=$(]GW@/+<Z65ER]JW+-'K#HG-U94>%/@O1'"GM(T"KG9)153G.8/IMX^
M72#*/"E(0I."H9_"ZH1&C)$O>@7[=# Q<(0VM5G<DSBA#"GG'/61D[B@29[
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
MBV[[OH20D%MB\9Y8THI% .9MM!WL&*<K!0PJ*CL=UAVA>WCQY2 J_"0!'!-
M/8U]4SW[0ZNW 5=DG2NRM[KBWE3=E3 /$-TM*_?:?9#L7[*[:.S6W.3:(]C=
M]0%K9:)[ IT.6/-J.E5\BBW]FE4F<,$]_V3- M6TS@D(I1ETU\*@5+^@G:_&
MY# #*!D4T-=B'W!<C\:VB\$UU$N,.\+"C_(^D2C%+T<DS/RB&")"MURZIF'J
M2'C6W0>(A%M$5B$#:#H)AJ(D[Z(D?VN4?.QYZ<IXJ8<P; A]Z8#;7\>2P_+\
M="0U@/==OU*[ 1&*NQ>#F)W<4D !A78 JI@6[%K_8@Y<D#:(<O0"KI[VS=.9
MPX&Y[KV/KUXBQFYD,(["(/:2''%8$OI%T,7-0?<4I9$79[&%8G$,\^ U=!"P
ML+X!+MO0< ML;N.]30Q[-?XO-!=$*18=OI3BY<AAFG@AIAQ@QM"';<_+*5^M
M[P[SR,MH?&31;98!"R/<42?=(8T3CR:1&:$(96$$[&*G!'X2D0]230#B(#FH
M D44X*>D\--PEVQ) ++E."6E?D)W3!E,S#!*O"@S]BG\/-NQ/*2 M5,$S$G@
M%RD(Z45)8#6DZ39>MB"%L)Z9W4;(L.N ,5A?'(&?O2(I5I&Z"8YW \$E *Y&
MZA7<''>'$!8:<<! EC=\$HU#V:K5Y#O45VT1K9$$$D3Q"1Y9DC^YDD9J![R9
M[;$=5B,5<*IP91_DKB2I 81MP*ZU): ;+ #%(.+<6&KIH;K;BCJ0M&.K:'((
ME3T48+C""\$'SFXHA1/=%(+>'EXOH0YP %Q8T8QC[.YPA>?!1&% "P?_H648
M F_0OM/8@N(-9ZT ,AAHS '9KUT!).>\M/L%*\@*,RZE!73&)@/PSOEX9?C]
M-MRYWT8C^N00DLTE+.J-NR)3H4VE!-%KV(R88)LH61,$!XB/0!L W7RU+=KT
M]+4$;7"X.ZL9PJ%%U]:*P3:RA@H?&ZC132M*VY$,'G4(8]V149GUDG7_,CAV
M?Q/L?W*[10P":Z%=O6]0Z)^ 5ER;G'>''ZR37'3*=N<=*R3+-Y1=+]D\'1EH
MH?U//65=[_W_CQ^O?DZ+@U[!#3T:X E'Y.4T[!':U&T8)>#J(L3JG'J1N4/U
MSJ$MO$)NXP0+%J=XMF?[ BV"UU;OPR4H169.6 LOR$W/\&B1O49NO.LH"@0)
M4*C4=/XD&\2--%C_E D&4^P&_SW<,F&JY3W7&@+S7X(]BDKHYX$C_&&R;T^"
M/2>,>]Q;@E6$*^WV+QN!VJY%*>:(6UE9R@7T5@_*L^WY:Z-B\"^:X>C!DP71
M#%.>VY\X+:G9F-NS"%?5;4O=2=@=/*W/MS_=W][:(Q)\ZLZ57?[MR;T7R;;G
M[+"S$@T!N20D"@!'PMXT\X(XW;?(6<S;:2^:Y%X*B#0,(3D+1$V B>+(ULMC
MVPLK%S4"G#G'@-JL%"8U4W-6'GL%Q5 &;!@'U%K@$,_@H1<^'W7&>+'^,/;B
MQ,#0U OL$:J7T'QG(IST?E367$W-[U@P#7K1_K/L1KM?OE?V1^=ZNOU?_(FI
M*10RP $36!H  !X197_!VA<MY^:WYZ/46M;F<<8A.A1.@.\3*?7J!1ET/\(O
M_P=02P,$%     @ BH!65OM5EU%]!   :@H  !D   !X;"]W;W)K<VAE971S
M+W-H965T-#,N>&ULG599;^,V$/XK V^PB $UUF$[=C8QD*-'@#V"3;I]*/I
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
M&EYE6"S*;YL>,7+C-KRE-+@O.K#"!1V4)<#WE93F@%@%W<H_^P=02P,$%
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
MVC0%4N^^4>UVUTE1UB6[3+&]6O;$3"-J779B]BOY'*GUTO[GE>K# .T]5TP
MSG-W+SWN).1>]$LWHL@=BWNH0'7Z5JY;1.O@T\\DW[>AUT.%52*7-B&WXJFR
M;PBO>Z6^F=FAM4/=^^W[.UB[&41:)?;E=G4"SJ8K)-T<[97/]JQHVL/#CE\^
M>VVK)'!);XKTR@%]NX>W<75\M[SH7NMVV[M'SU\!ZP)X*^4:I.XBQE6]Z=X1
MNXE16_MVMU+&J,H.-Q*6-+0!W]=*F6%" L;7W//_ 5!+ P04    " "*@%96
MY1ADWID#  #G"   &0   'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6RE5EMO
MVS84_BL'ZE D@!?=;,5V;0-QDF)]:!'4W?HP[(&6CBTB%*F1E)W^^QU2LNHN
MKF=@+^+MG.]\YT9JME?ZV92(%EXJ(<T\**VMIV%H\A(K9FY4C9).-DI7S-)2
M;T-3:V2%5ZI$F$11%E:,RV Q\WM/>C%3C15<XI,&TU05T]^6*-1^'L3!8>,S
MWY;6;82+6<VVN$+[>_VD:17V* 6O4!JN)&C<S(.[>+H<.7DO\ ?'O3F:@_-D
MK=2S6WPHYD'D"*' W#H$1L,.[U$(!T0T_NXP@]ZD4SR>']#?>]_)ES4S>*_$
M5U[8<AZ, RAPPQIA/ZO];]CYXPGF2AC_A7TG&P60-\:JJE,F!A67[<A>NCA<
MHI!T"HGGW1KR+!^898N95GO03IK0W,2[ZK6)')<N*2NKZ923GET\,BVYW!JH
M4<.J9!KAZ@M;"S37L]"2 2<6YAW8L@5+?@(6)_!125L:>)0%%C\"A,2LIY<<
MZ"V3LX@/F-] &@\@B9+D#%[:NYMZO/2_W'WJW?WS;FVLINKXZY3#+=SP-)SK
MF*FI68[S@%K"H-YAL'C[)LZB=V?(#GNRPW/HBQ5U8-$(!+6!>U75C66^DFFY
M9(;GP&0!#UPT%@MXG<A3[IPU>-J=K[ZPR0+;H:8^!>/ #5"'&TL,R"C0Y>!Z
MHZ-4=)3P0&F/%&=F2$S0)6"\N"T1OI&$ 72U I1IK-;$/8WABDLZ5XTA-',]
M]<EWG]A](OC45,3$*CV%#S)7%<)&JPIR*CTN&\>'[BSM8V7@%Q@G@V&4T>1V
M.!C%;C).!\DD/BA?"67,=8M1<-/!$*4CE+=OQDF<O(-X$,<I7,7CP6TRNH9/
M=&OR%H7M&!>N<< JHE)5E"@?J5*) O6/1$:#+)G0)"-&64:^2T6][5PZ"B4>
M9]1#3>&29*3)()ID;AC?IF[(LN$K$Z]R=&3DOF-O5?Y,06@CX!+;[C226P-D
M(1Y30D;#GY)R*A1-VC0>@JC$DP32=!"1%JTF\1C.],FH[Y/1Q7UR1\GSOM%=
M#RO,&\TM)RZ/+[EH7)WY-/^KFU[?"J=ZYRR)T[WSA8J\+7J7&.O+H]9JQPNB
MY#J@5A:),1,4+,M_[9GGEZ3@?[;116D>IM]K/SV9K/#H\:&^W/HGUI 'C;3M
M.]3O]J_X7?MX?1=O?P$^,KWE1$+@AE2CFUL*N6Z?U79A5>V?LK6R]##Z:4E_
M(JB= )UO%,6S6S@#_;_-XA]02P,$%     @ BH!65D#2[\ER!   DPL  !D
M  !X;"]W;W)K<VAE971S+W-H965T-#<N>&ULK59M;^,V#/XKA-?;KH#3^-U)
MEP1(>QMV0+L5;;?[,.R#8C.)<;:4D^2FV:\?);NNV^:\P[ O-O7"1R0?DM)L
M+^1GM474\%B57,V=K=:[\_%895NLF#H3.^2TLA:R8IJ&<C-6.XDLMTI5.0X\
M+QE7K.#.8F;G;N1B)FI=%AQO)*BZJI@\7& I]G/'=YXF;HO-5IN)\6*V8QN\
M0_W[[D;2:-RAY$6%7!6"@\3UW%GZYQ>)V6\W_%'@7O5D,)ZLA/AL!A_SN>,9
M@[#$3!L$1K\'O,2R-$!DQI<6T^F.-(I]^0G]9^L[^;)B"B]%^:G(]7;N3!S(
M<<WJ4M^*_2_8^A,;O$R4RGYAW^R-8@>R6FE1M<ID057PYL\>VSCT%";>5Q2"
M5B&P=C<'62L_,,T6,RGV(,UN0C."==5JDW$%-Z3<:4FK!>GIQ1622PK>W[-5
MB>IT-M8$:I;&60MPT0 $7P'P [@67&\5_,1SS%\"C,F:SJ3@R:2+8!#Q V9G
M$/HN!%X0#."%G8NAQ0N'7?QSN5):4A;\=<S)!B(Z#F$JXUSM6(9SAU)?H7Q
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
MP)7BN;U< 4E!& /]?,&YVMZ8">J>\>P;4$L#!!0    ( (J 5E;<-/39]P(
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
M<$W5'=]\@\Y/9/AR3F7SC39M;!(X**^EXF4'U@I*PMI?_-S580LP#-\!^!W
M_R@@Z !!8[15UMB:8H6SD> ;)$RT9C.#IC8-6KLAS+S%F1)ZE6B<RF[8&ICB
M@H!$QS/=(T5- ?$%VEHX0<=34)A0/1J@A]D4'1^=H"-$&+I?\5IB5LB1J[0:
MP^GF7>;+-K/_3N8IY*<H&'Y!ON?[%OCDX_#A6[BK:] 7PN\+X3=\P3\*\8*F
M1.:4RUH ^G4QETKH5OMM\]<2AG9"L_W.985S&#MZ?TD0:W"RSY^&L??5YO8_
MD;WQ'O3>@T/LV1W>Z)Y2( BF-J,M.FG0YEA89T/]29.1N]ZV8 D+HBA*^[ W
MXL)>7'A0W*,^!@:$#2K!<Y#61FL)XNW$R5D8[LC;CXK2]\1%O;CHH+@KPHC>
M? 5:<F[?!-%>UC")_&!'VWY4<.9'L5U<W(N+#XJ[%EQ*O4N[QK:IBRV5B^-H
MMW26L-2+$]^N+^GU)0?U?=>O$W7=;*U=LI=V$/MGN^(L46$81W9M::\M/:CM
MGBM,^]H1N[YTO^$3+XB]'8&VL-CWDAV%[M8I;F[0'U@L"9.(PD(#O=-$-XEH
M;Z5VHGC5'.QSKO0UT0Q7^B('80+T^H)S]3HQ=T7_UR#["U!+ P04    " "*
M@%96-2FLW2H#  !)"0  &0   'AL+W=O<FMS:&5E=',O<VAE970U-BYX;6RM
M5DU3VS 0_2L[+M.!&<"?<0I-/$-P.^7 E"'].'1Z4.Q-K-:67$E)X-]7DATW
M)"9PZ"61Y'U/^W976HW67/R6!:*"AZID<NP42M67KBNS BLBSWF-3'^9<U$1
MI:=BX<I:(,DMJ"K=P/-BMR*4.<G(KMV)9,27JJ0,[P3(9541\3C!DJ_'CN]L
M%N[IHE!FP4U&-5G@%-77^D[HF=NQY+1")BEG(' ^=J[\RW1H[*W!-XIKN34&
MHV3&^6\SN<G'CF<<PA(S91B(_EOA-9:E(=)N_&DYG6Y+ ]P>;]@_6NU:RXQ(
MO.;E=YJK8NR\<R#'.5F6ZIZO/V&K9V#X,EY*^POKUM9S(%M*Q:L6K#VH*&O^
MR4,;ARV 'S\#"%I L N(G@&$+2!\+2!J 9&-3"/%QB$EBB0CP=<@C+5F,P,;
M3(O6\BDS:9\JH;]2C5/)#5LA4UQ0E' \;7(/? Y7)A]4/6IW5$$9J +A'B6*
M%8(N-OCPD*&4I_!Y)GF)"D^!L!RFNHK@EJ\H6\"&^?$$CE-4A);R!,[@ZS2%
MXZ,3. +-^J7@2ZF!<N0J+<:XY&:MXY/&\> 9Q_U ;\14(>$#RS%_2N#J*'2A
M"#:AF 0'&5/,SB'T3R'P@J#'H>O7P_T>>/IZN'= 3=@E-K1\X0N)?80?][PL
M09^2-1'YS[Y(-TQ1/Y.Y>"YE33(<._IFL27@)&_?^+'WOB]*_Y,L_4]D3R(8
M=1&,#K$G$UQ0QDPISTA)6(9]H6LHAI;"7+&K)(H\G;_5=DAZC/S8?VJ4[AN%
M41QV1D\D##H)@X,2-J>4MZ?4'E)I#FG5'%+:50D^Z$XB>S4V>\1;GOF#=\&.
MQGVCP!_L2-RW"0>#?H5QIS ^J'":"5+7F&\I,1JYOJ\$D/R7OD%UDU*]%TR\
MY\Z9?S'<T=5C%$0[NGILPNB9U T[8</#J6/Y"Z4WW"N8V!]>[+B_;[1?GVF/
MT79]-OZ[6TVF0K&PS5I"QI=,-9=LM]J]!ZYL&]Q9G^AW0M/6_]$TCXQ;(O21
MDU#B7%-ZYT-=,*)IW,U$\=JVLAE7NC':8:'?.BB,@?X^YUQM)F:#[O64_ 50
M2P,$%     @ BH!65NAD=]\+ P  *PD  !D   !X;"]W;W)K<VAE971S+W-H
M965T-3<N>&ULK99=;YLP%(;_BL6JJ972\DT@2Y#:9-,FK5+4KMO%M L'G,0J
M8&J;I/WW.X:$IN!&D;:+$ SGO'[.BP]FO&7\4:P)D>@YSPHQ,=92EB/3%,F:
MY%A<L9(4<&?)>(XE#/G*%"4G.*V3\LQT+"LP<TP+(Q[7U^8\'K-*9K0@<XY$
ME>>8O]R0C&TGAFWL+]S1U5JJ"V8\+O&*W!/Y4,XYC,Q6):4Y*01E!>)D.3&N
M[=$T4O%UP$]*MN+@'*E*%HP]JL&W=&)8"HAD))%* </?ADQ)EBDAP'C::1KM
ME"KQ\'RO_J6N'6I98$&F+/M%4[F>&*&!4K+$52;OV/8KV=7C*[V$9:(^HFT3
M&P0&2BHA6;Y+!H*<%LT_?M[Y<)!@>^\D.+L$Y]0$=Y?@UH4V9'59,RQQ/.9L
MB[B*!C5U4GM39T,UM%!/\5YRN$LA3\9S#@N"RY<!FF>XD .$BQ1]?JIH"8]*
MHO,9D9AFX@)=HH?[&3H_NT!GB!;HQYI5 F+%V)2 H<3,9#?E33.E\\Z4,Y)<
M(=<>(,=R'$WZ]/1T^VVZ"<6W#CBM TZMYY[F0,> W]<+(3DLMC^Z0AME3Z^L
M&G D2IR0B0$=)@C?$"/^^,$.K$^ZLO^3V!L3W-8$]YAZ_%U5K7Z9.M"\Y&Q#
ME ':Y]MH#6LM]9K8Q-[0\L;FYK <35#@O@:]P?1:3.\HYDU%LY06*W0*92,5
M' *XGAUT,#51CN\$>DZ_Y?2/<M[B9 V7^$L-2O:K24?I]^9W'#?TW YF/\R.
M/,OV]9Q!RQD<Y9RR E9WU;Q1H:O!T!4L+JV=09_ M0*_P]F/@C:-7#WFL,4<
M'L5\;='R]275NCI *\[TS,,^3>A;3MB!UH0%MA>$>NJPI0Z/]Q08.8)]*JGR
M*L.2I+"]0.LF%"N[=;AAC^/2'OJ>UVTM75S@^>$[-D<M</1/-A=$NX*C7J/;
M5N2'7>A^6!2$87<!FP=;F?J,N,5\10N!,K*$/.MJ"(W FZVY&4A6UKO;@DG8
M*^O3-7S-$*X"X/Z2,;D?J VS_3Z*_P)02P,$%     @ BH!65F_1ZL*B"
M1&\  !D   !X;"]W;W)K<VAE971S+W-H965T-3@N>&ULM=U;;]M&'@7PKS)0
MBR(!BH@<4K>L;<#V7#B+I,W&Z>Y#T0=:&EM$>5%)*DZ _? E)4;42/183(]>
M$DOF_"C9Q_;?/*9X\93E?Q9+K4OR)8G3XG*P+,O5V^&PF"]U$A9OLI5.J_<\
M9'D2EM7-_'%8K'(=+C:+DGA('6<\3,(H'5Q=;.[[D%]=9.LRCE+](2?%.DG"
M_.N-CK.GRX$[^';'Q^AQ6=9W#*\N5N&COM/E;ZL/>75KN%,64:+3(LI2DNN'
MR\&U^U;YFP6;+?X;Z:=B[VU2/Y7[+/NSOJ$6EP.G?D0ZUO.R)L+JO\_Z5L=Q
M+56/XZ\&'>SV62_<?_N;+C9/OGHR]V&A;[/X?]&B7%X.I@.RT _A.BX_9D^!
M;I[0J/;F65QL_B5/VVU'SH#,UT69)<WBZA$D4;K]/_S2?"#V%E#ZS +:+*"G
M+O":!=ZI"_QF@7_J@E&S8'3J@G&S8'RPP'.?63!I%DQ.W<.T63 ]=<&L63#;
MQ&'[^=M\\EE8AE<7>?9$\GKK2JO?V"1HL[KZG$=I'?:[,J_>&U7KRJOK^5_K
MJ(CJX!7DU2]AGH=U^EZ35TR78107K\F/)$K)IV6V+L)T45P,RVJW]>+AO-F%
MW.Z"/K,+EY+W65HN"\+3A5Z8P+!ZO+L'3;\]Z!MJ%:_7CV\(I3\3ZE!*?KMC
MY-6/KSL>V*V=87K^AKCNAG$L#+,SO\[+BAF]R' [(_1]Q7@O,L+._#M,3WHT
M\H2/C>>:'V)RORZJ[8JN$ 2G>Z[E8:G3F6>>G9$H;_=EX&U<[QGWIGEB9._K
M@?S^KKJ/J%(GQ1\=#_5F2_K=9/U3ZFVQ"N?Z<E#]&"IT_ED/KG[ZP1T[_^J*
M*A)C2(PC,8'$)!(+D)@"84:6_5V6?9M^);-L\13%<5=DK2O[1A:),23&D9A
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
MLFU[H\Q6F^MYW6=EF26;-Y<Z7.B\WJ!Z_T.6E=]NU#O873COZF]02P,$%
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
MK40Z.F V3YS5+J"-KE\J?YNP:;.HE:WCL:IHUI1<HY;<K R&NW(PW#7Z_;O
MB3YMZ9-8730:;2^-1INP:9NPJ"58)0"^]WKH\-K97!:<EL+1*FW:*BUJBU:-
MR,$QT#\S0YKL1EXS(K49D933NW;2-,,O#I/_9B\T".OVFZTV&[5%RR/@'IS)
M=?I?VLL0B6*SD.?'V[*TO'!YL-<,1^43<Q%CS_JOF/P6YR,62\(DHK#02.^V
MKW>((K\8R5\47]N3_YPKQ5/[N *=_(2IH+\O.%?[%]- >3TU_@]02P,$%
M  @ BH!65@)1X%SD!   $AT  !D   !X;"]W;W)K<VAE971S+W-H965T-C0N
M>&ULO5G;;N,V$/T50ET462")1.KJU#:0=;#; -LB2#;M0]$'1J9M(9+H)>EX
MTZ\O=8ED61019^F\V)(\<SAG/$,>4N,M98]\18@ /[(TYQ-K)<3ZPK9YO"(9
MYN=T37+YRX*R# MYRY8V7S."YZ53EMK(<0([PTEN3<?ELQLV'=.-2).<W##
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
M4VA<,S>5':1=8.970NCGCJTVW;\B^0M02P,$%     @ BH!65DOFXX3O P
MNP\  !D   !X;"]W;W)K<VAE971S+W-H965T-C@N>&ULK9?;;MLX$(9?A= 6
MBQ;(1A)ULK.V@-1JL05:U*B;[46Q%[0\MHE*HI>D#WG[)25%421&3KV]L768
M^37?D!P.)T?&?X@M@$2G/"O$U-I*N;NQ;9%N(2?BFNV@4&_6C.=$JEN^L<6.
M UF53GEF8\<)[9S0PHHGY;,YCR=L+S-:P)PCL<]SPN_?0L:.4\NU'AY\H9NM
MU _L>+(C&UB O-O-N;JS&Y45S:$0E!6(PWIJW;HWB>MIA]+B;PI'T;I&&F7)
MV ]]\V$UM1P=$6202BU!U-\!9I!E6DG%\6\M:C7?U([MZP?U]R6\@ED2 3.6
M?:,KN9U:(PNM8$WVF?S"CG]!#11HO91EHOQ%Q]K6L5"Z%Y+EM;.*(*=%]4].
M=2):#F[TC .N'?!+';S:P>LZ^,\X^+6#7V:F0BGSD!!)X@EG1\2UM5+3%V4R
M2V^%3PL][@O)U5NJ_&1\FZ9\#ROT[J1FD@"!7B<@"<W$&_0'NELDZ/6K-^@5
MH@7ZNF5[08J5F-A2?5B[VVG]D;?51_ S'TD@O4:>>X6P@['!??9R=]?@GKS<
MW7GJ;JML-2G#3<IPJ>>=2=E'2I8THY*"N$*S/>=02/3]=BDD5[/Y'U.:*F'?
M+*R7^(W8D12FEEK# O@!K/CWW]S0^=.4M%\IEOPBL2<)]9J$>D/J\:R<YL!5
M'5D2"<8)5BE$I8*N98?8#:-P-+$/[908K (<>$^MDL%H+F3U&U;_#&LU3W:,
MEW6/K=&GQ7R.LL?)9,*O1,,6&,9AU*$W&(W]CE$R&-Z%\$$#'PS"?RC$GI,B
M!1-BT(L^]'VG@]@WBCRW8Y0,!G$A8M@@AH.(#\7A2+@B?6XXPSXK#MP.:]\H
M"$=AAW4PF@M9HX8U&I[++->;!M$3V409]0#<R.F.ULQ@%>!Q=\T.1G(AYZCA
M')V9MA*4JD1J]T.2G,QC.C(,U[@S7#.#D1]V60>CN9!UW+".7U2?5&/)U< 6
M&Y2!:JN:^G1O0A_WJ$8A[HYSWRC"WKB#/AC<A>BN\]@+.8/P=P407JC5R^$
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
M NS:@O<H0WBF#.'YV)P&+2M :1Q*$RB:+8PI*WCT,H43W&M#WG>O>PD.6CR
MT@2*9H??% \\NGAP=((#V%?Z4#J/*6A- DH3*)HMJJE)> -LLH/6%: T#J4)
M%,T6QM05/'HQ0[<)W)I57<JR)G"[R0U:+8#2!(IFA]M4"SRZ6G!T<GMW[TH?
M:.<1!BU70&D"1;,E-^4*[Q*;^J!%!2B-0VD"1;-7]YJB@D\O?^B4^AK6;NK;
MO2Q!=]EYQ2ZT5("BV>$VI0*?+A40"TVJ-=7C'^RS5#IUE=5*Z_5>K4) %R9
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
MB+K1UA/%%U7KF7*E&UDUS/6W"0H#T.]GG*O-Q&S0?NW$?P%02P,$%     @
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
MBW<L38&RBEO,8^V;L7J<I6G!*EIH"ZTM]9Y'A):GA@IPO\WAN/NJT 2=(C^
MG>YC+NY8\J@ACXSD;Q*:9)L,K)F0:J4C$T[4NB=7HI@RP%II W#\C_+J^76]
M T9].7S7Z^JAB?*"KAK&:H]5HS&CT.C#YFH$J:4454L3S@F-O@/),15J%!:+
MN%H%K0A>CYX7P.X,JHDZ18'?-4W:L(GGOC"K-$80'NP$7YTA*ZC.%.FA+J-^
M6&\LA#JLUEAH\VG\'30;O%U[7>W:ZV&OO2[,[65$?O.$:!,MM(765K5QFM!L
M->VNR:!50VH5+;2%UA:Z\:30MBF%?<,) ]_MCDF=+1VA[J!\#U\*&V,*S<[T
MU9[U28FR4 ,<* ^KU:)O1T^'Q3>1MAC],#2$/3'>P[C"QKE">]85ZKRK-^[Q
M[H?UNTJH ]OO*NU/5(U]16;[>O"R UGUI5;10EMH;0T;7XK,OO1P#?M.LSLC
MO!X2FJLYEFUC1!'ZH0L>9,E)5OK91 MMH;6E;EPN>C>7BS3&5#/G:L(T<ZZY
MS&-E:,PP,IMA&TL?\R/>W,MLHH6VT-KR-MX<#7^@BT16[;I5M- 66EOHQJXC
MHTL]PD56@.WE&/*[7S"T83[JKMG-Y1U+OS'1R&RB_[>/1!JW#,?#WIRF"QM-
MNF*\AZE&C:E&9E/]%A]90;7W*2;=;Z"ZJ'Y?";5A^WVE).3L[>5FA"^+/7$!
M(K:ALMP"K:_6^^X7Q6YSY_HE/ _+W?,&IMS,O\%<#0(!4K)0D.[92(U.7NZ/
MER>2K8L=XT<F)<N*PQ7!,>%Y@+J_8$SN3O('U/^E,/\/4$L#!!0    ( (J
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
M2KGH2+;3M>.:256)ZF8,1&F5&ZCW&\;DJ9-/4/U?,?\74$L#!!0    ( (J
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
MU.Q&T&UZ8+BD0M X;6X A\!4!_G_BE)QNE$#%*?:DW\ 4$L#!!0    ( (J
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
M)[ORX4A/29XGV_+E1@3RVE04D-^ODR1_?5,T<'R^UN)O4$L#!!0    ( (J
M5E;EW3R;) 0  &D5   9    >&PO=V]R:W-H965T<R]S:&5E=#@T+GAM;,58
M76_B.!3]*U9VM&JE;1,G$* +2+29F:VTHT7MMONPV@>37"!J$C.V@?;?KVU"
M/D@:%<E27R!Q[CGQ/?9Q[#O>4_;"UP "O:9)QB?66HC-C6WS< TIX==T YE\
MLJ0L)4+>LI7--PQ(I$%I8KN.X]LIB3-K.M9M<S8=TZU(X@SF#/%MFA+V=@L)
MW4\L;!T;'N+56J@&>SK>D!4\@GC:S)F\LPN6*$XAXS'-$(/EQ)KAFP#["J C
MGF/8\\HU4JDL*'U1-_?1Q')4CR"!4"@*(O]V< =)HIAD/W[FI%;Q3@6L7A_9
MO^GD93(+PN&.)O_$D5A/K*&%(EB2;2(>Z/X/R!/J*[Z0)ES_HGT>ZU@HW')!
MTQPL>Y#&V>&?O.9"5  RT7: FP/<4T#O'8"7 [R/ GHYH*>5.:2B=0B((-,Q
MHWO$5+1D4Q=:3(V6Z<>9&O='P>336.+$].O/;2S>KFZE=!&ZHZF<3YSH$;F8
MK58,5D0 NL\$B^50A^B9)%M =(G^VJ@@CKZ^ @MC!299A$K(-Q*S,OH!N&0(
MA0Q[%#1\04]9++B&5!^M"0..Q)H(]"R;(;I$%P$($B?\$EVAI\< 77RY1%]0
MG*&_UW3+)0$?VT+JH+*QPSSGVT/.[CLY8Q?]H)E8R]YG$41U EL*6*CH'E6\
M=3L9 PBOD8=_0Z[CNBT=NOLX'+? @X_#G8YLO&).>)K/>X=/C\/5HCDE9HR1
M; 72]@(MWE U;D[>=/-L3UB$_OU34J)[ 2G_KVU\#N_OM;]?+74W?$-"F%AR
M+>/ =F!-?_T%^\[O;=J:) L,D=5T[Q6Z][K8IZ5[XL)PNZ.%:&XX.!JN3=<#
M_T#SJQ5_-Y7S85<5JQGA8L>K!P7-(&^(W2*HEER_2*[?F5S%YUPO 5NU!+0E
MT<ES[N0P2188(JOIYQ?Z^9]L2M^D[B;) D-D-=T'A>Z#SGG[7:HK4*1<N53?
M-&W(-OD.-'[5-"/WU'[-(-\[#0J:01@/^[C=?\,BCV%G'G+.I'*V:.^U=;\3
M?>[HFR0+#)'55!L5JHT^V74CD[J;) L,D=5TQTZY+W7,^"[GJ7G*[Y_XKB7(
M&YSZKB4(CYQVV^'*!AMW)C('IH]G60C5S6]K*IU,YTX&HVR!*;:ZBFZIHOO)
M1LP[8$I\DVR!*;:Z^.5Y '=N>\_PHM?TXL =G9JQ&35RA@TW-J-Z>#1XQX[E
M'AMW;[(#6 )C]8-H:RJ=-&=/!Y-L@2FVNH3E3A[W/]N+1L\ 1MD"4VQU\<MC
M .[<[9[A1;]QBL-.X[O8#/*]AA.;0?W!Z7?1KM2@4F K7<OC**3;3!P**45K
M42^<Z2K92?NMJB/JVE9)<RA"_B!L)4_%*(&EI'2N!W(DV*&N=[@1=*,K70LJ
M!$WUY1I(!$P%R.=+2L7Q1KV@J*Y._P=02P,$%     @ BH!65L$/M&G& P
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
M5_C^!>TFX/>%4O:IXUY8S8MZ]C]02P,$%     @ BH!65HIERO+F @  *0<
M !D   !X;"]W;W)K<VAE971S+W-H965T.#@N>&ULK57?3]LP$/Y73AF:0&I)
MFK3EQ]I(E&X#"1BB8WN8]F"2:QOAV)GMM/#?[^RDH906[6$OB7V^[_-W=_9Y
ML)3J4<\1#3SE7.BA-S>F./5]G<PQ9_I0%BAH92I5S@Q-U<S7A4*6.E#._3 (
M^G[.,N'% V>[5?% EH9G F\5Z#+/F7H>(9?+H=?Q5H:[;#8WUN#'@X+-<(+F
MOKA5-/,;EC3+4>A,"E X'7IGG=/SGO5W#C\R7.JU,=A('J1\M)/+=.@%5A!R
M3(QE8/1;X#ER;HE(QI^:TVNVM,#U\8K]BXN=8GE@&L\E_YFE9C[TCCU(<<I*
M;N[D\@+K>)S 1'+MOK"L?0,/DE(;F==@4I!GHOJSISH/:X!.?P<@K 'A)J"[
M Q#5@,@%6BES88V98?% R24HZTUL=N!RX] 4329L%2=&T6I&.!./,YU(83)1
M8@K?"E3,9E?#_@V=H GCJ(&)9D7,X$IJ#71ZX )YZ@;6:PUZ /MC-"SC-&K#
MK9():FV1HY)^-"8K[5I(S3A\5;(L6HZK35QMLF$+;J2!7<+:<#\9P_[> >Q!
M)N#[7)::%.J!;R@=-B@_J4,?5:&'.T+OA'!-.\PU?!8IIJ\)?,ICD\QPE<Q1
M^"[C&)-#B#HM"(,PW"+H_-_AG7?D1$UM(\<7[>"[%(G,$2:&&:2+9UHP8IR)
MA$RN0=C"GJ5I9A-+M; 9YU*7BFK^\+Q1(]T"HN-E:BNYJS:_KD@!7-)N^O>V
M>E1RN]OEVGYUJ@N6X-"CAJ11+="+/W[H](-/VW+YG\A>9;;;9+;['GML+X<]
MJEM/704]<E#;1!?QT7$W&/B+=?5OG<(@"H\;KU>R>HVLWKNR7FXIU7&KMMZ;
M;=O]H_[)AK@M7E$O.MD0YZ]UG1S5S#5C#8DLA:GN3&-M^OV9:W,;]A&] U7;
M?J&I'I%KIF89'2R.4Z(,#H](F:H:<S4QLG"][4$:ZI1N.*>W#)5UH/6IE&8U
ML1LTKV/\%U!+ P04    " "*@%96E2X2(0H%  #B(0  &0   'AL+W=O<FMS
M:&5E=',O<VAE970X.2YX;6S5FM]OXC@0Q_^5$;<ZM1(M2:!0>H#4-LEN3[>]
M:MG=>SC=@TD,1)O$6=LIK;1__-DA#02"!=*\] 42X_GXQW<R-N.,5HS_$$M*
M);PD<2K&K:64V4VG(X(E38BX9!E-U2]SQA,BU2U?=$3&*0D+HR3N.);5[R0D
M2EN345'VQ"<CELLX2ND3!Y$G">&O=S1FJW'+;KT5?(D62ZD+.I-11A9T2N6W
M[(FKNTY%":.$IB)B*7 Z'[=N[1O?'FB#HL;WB*[$UC7HH<P8^Z%O'L)QR](]
MHC$-I$80]?5,[VD<:Y+JQ\\2VJK:U(;;UV]TOQB\&LR,"'K/XG^B4"['K>L6
MA'1.\EA^8:M/M!S0E>8%+!;%)ZS*NE8+@EQ(EI3&J@=)E*Z_R4LY$5L&=N^
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
M0-D ?+^4TCQT[!^TU[K9'U!+ P04    " "*@%96!\HD(RD#  "6"0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Y-"YX;6RM5FM/VS 4_2M6AB:0!GF5!E@;
MJ6U 0QH:*K!]F/;!36X;"\?.;+>%_?K93IKU$2K$^)+8SCTG]QQ?/WI++AYE
M#J#04T&9[#NY4N6%Z\HTAP++$UX"TU^F7!18Z:Z8N;(4@#,+*J@;>%[7+3!A
M3MRS8[<B[O&YHH3!K4!R7A18/ ^!\F7?\9W5P)C,<F4&W+A7XAG<@7HH;X7N
MN0U+1@I@DG"&!$S[SL"_2"(3;P.^$UC*M38R2B:</YK.==9W/),04$B58<#Z
MM8 14&J(=!J_:TZG^:4!KK=7[%=6N]8RP1)&G/X@F<K[SIF#,ICB.55COOP"
MM9Y3PY=R*NT3+>M8ST'I7"I>U&"=04%8]<9/M0]K +_[ B"H <$VH/,"(*P!
MX6L!G1K0L<Y44JP/"58X[@F^1,)$:S;3L&9:M)9/F)GV.R7T5Z)Q*KY\(@H-
MC/E$/:,1ETHBS#(TD%+7W'518B+T+.O1PS&DG*6$@D3?IN@KP1-"#4C[C]IH
MQD"Q(FR&[CFZPFD5/.),<DHR;&?]<JH+5\DC=)B PH3JUC%ZN$O0X<$1.D"$
MH?N<SZ5.2/9<I>6:I-VTEC:LI 4O2/,#=,.9RB6Z9!EDFP2N]JDQ*UB9-0SV
M,B:0GJ#0_X0"+PA:$AJ]'NZWP)/7P[T]:L)FZD/+%[[ -P:IQ#Q5<V$F2?=
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
MGVA)R,O]A2S.U'^P+['0 N$V$RPIC64$2906O^2]3,21 ?);#'!I@'4#M\7
M*0V<<PW<TL!5F2FHJ#P$1)#9A+,]X#E:>LLO5#*5M:0?I?F^OP@NWT;23LP^
MIR%+*/A&WFD&KIXXVT5J2^47!1KOEIPE8,Y2$:7;*%V!KQO*2;YU&0BBY9+R
M$B+6%'RD"_DR!B^"B*U@_ =X)H)>@ZN "A+%V36X!=]? G#UX1I\ %$*OJW9
M-B/I(IO80I+*0[/#DL!#00"W$$ 8?)%1K3/PF"[HHNG EMFH4H(/*7G G1X#
M&@Z @VX AA@; IJ?;XX,YL'YYK"#C5-ML*/\.2W^'N7>J-HZVDZU'>"9ABP-
MHSA2VW@#[A.V307XZ_XU$US6X]^FS2@6<\V+Y4WJ+MN0D$XMV84RRG?4FOWV
M"_+A[Z9$7M)9<"%GC22[59+=+N^S^D.7-4%->2OLA\H^[\6[&79<Y$SLW7%"
M#"@XAJ,F*C"@L(_'%:I!P:LH>+T4*!!YK=^ F&:RG,LJINH+,I$J//I'@7B>
MBS1.IR 7^CJE4Y#C>]#,R*\8^9V,#EU(<@(AIXM(&-N+?[+TK>>.-1(FT&BH
MD3" $/1=,XMAQ6+8R>+Q/<PW(R?Q2E.ZC 20[5G.A?!-#;P%D%4M54"FJMA$
M<'@:%D:N1M $@HZ6AL" 0OZPA>&H8CCJ84C#K>I0?4Q&)\N/?:@1.<6@X4C[
M)@,#"*$6&N.*QKB3QGQ-TA7-I]F.Q%M2J)I8ZBJ2AL:6,#X)0N?2BPA.$;?(
M::D;!&M- #NI?)5#G!M',3Q=S]?*8&X C9&G!6[RY U; C\2,Z@S\*9^B8J!
MIWJ:D0TZ;:2RV^JE88)YT/5U1@:8ZQYUNB8G7'/"%QK@3Y2'M'>"E\M=:(1?
MU%MP*6_-5-=2"76*A#/&>.D@_WKKFAQ@?>:=!PMZ84T>M1I!_7+D9V=YZ5*+
M!7HZLQ*&FC!]Z@<M.*>ER:):IJ!NG7+F5._Q<@4''OSUVOA%]UKZ9LN@SQ(-
MX(EE,PNUM$'=VN;_JX*>!21-W):@'DMLH%DFJ,<2&5+;3%"MFE"?;#I75)2.
M]"\5CL;-/[T0S&9(5[8'G%97;35>BR;4K9I^6FZ4_IJ!Z*3Z,4%/7/+#03V;
M6"LJU"VIVG5(MYTQAI+A^+_L=G P,R>F><Q0RRS<+;/JR5XK%35Y;L"F&.5D
M9=S*TJ]& OOZ&&K!>5ACUX+#NAZSC\Z9$LI7ZKPNDQ6V345QOE(]K<X$[]5)
MF/;\ =T%Q<E>[:8X:/Q"^"I*,SFUEM(E' QE3^7%V5UQ(]A&G6:],B%8HB[7
ME,B9D /D^R5CXG"3+U"=H,[^!5!+ P04    " "*@%96H%&;-O8#  "8#0
M&0   'AL+W=O<FMS:&5E=',O<VAE970Y."YX;6RMEUN/HS84@/^*15?5CK0S
M8"X&IDFDV:3;CM3+:&=W^U#UP0$G6&MPUG:2F?[ZVL"0! R=2GU),)QS_)UC
MSH79D8NOLB!$@:>257+N%$KM;EU79@4IL;SA.U+I)QLN2JST4FQ=N1,$Y[52
MR5S?\Y!;8EHYBUE][T$L9GRO&*W(@P!R7Y98/+\GC!_G#G1>;GRDVT*9&^YB
MML-;\DC4Y]V#T"NWLY+3DE22\@H(LID[=_!V"9%1J"6^4'*49]? N++F_*M9
MW.=SQS-$A)%,&1-8_QW(DC!F+&F.;ZU1I]O3*)Y?OUC_4#NOG5EC29:<_4%S
M5<R=Q $YV> ]4Q_Y\6?2.A09>QEGLOX%QU;6<T"VEXJ7K;(F*&G5_..G-A!G
M"C <4?!;!?^U"D&K$-2.-F2U6RNL\&(F^!$((ZVMF8LZ-K6V]H96YA@?E=!/
MJ=93B_LJXR4!G_ 3D>#MBFR($"0W:_ +Q6O*J*+FR9V41,FK*R.C,&7R"ER#
MSX\K\/;-%7@#: 4^%7PO<97+F:LTF#'O9BW$^P;"'X%8D>P&!/ =\#W?MZ@O
M7Z\.+]5='8XN)GX7$[^V%_QK3,"*RHQQN1<$_'FWEDKHU^XOFX.-Q=!NT>3B
MK=SAC,P=G6R2B -Q%M]_!Y'W@\W=_\G8A?-!YWPP95T'4QO-*#9)9G.TT8YK
M;5,C#@L81K$W<P_G'@RE4A0$G= %6=B1A9-D/W&>'REC-JI&$YWMAWP8^#VJ
MH528^"BR8T4=5C2)=5\I7&WIFA& ZR2Q\46#G8/80SV\H1!$46RG0QT=FJ3[
M715$V(C08+,$GIU00S04BOPTL1/%'5$\?8R"2VDJ;5-IE,XR=JHT-M1XB)I$
M(>RQ#J50F$0C[US2P2:3L$N\HPHSP QSAH5XUIWSB$5NXTP&!-<^"M-^;MC$
MXL ?"6O:D::3I#]^VU/U#'3ETAU>CJ9O.MP\2M/^N5ND$C] =D+HG7J--\G8
M-!%0$)8#'4<@,2/6;N$-]X<!0FD/TR+GC3">]4/XFA.G?^MWTU17++("Z+:F
MW]B#'GIV>H11.LK2GN>M\0OR,/+Z\;6(C8&?FA:<; OCF=[J748S#@>';I6+
MT%FB79*=.@J<;BF6C!^OE*VM"PJ4P##ITUKD(NA[(]4<GKH,G&XS7S#;XV;$
M9'K(Q55FKTIPV$UTMB<#3IM8E(P%]=1UX'3;60W#^0Y4>N[G&W!XK0O#CG,=
M0H3Z%<LFYX?(#T><.#4G.-V=?M.\_Z43M.;.YXH0)4F_%=C$]&29]G#=L['9
M?+/\BL665A(PLM%ZWDVLW1;-9T"S4'Q73])KKO1<7E\6^M.)"".@GV\X5R\+
M,YQW'V.+?P!02P,$%     @ BH!65NL=QTB !0  8B<  !D   !X;"]W;W)K
M<VAE971S+W-H965T.3DN>&ULM9K;;N,V$(9?A7"+(@NDL4@YSJ&)@<3J8@-L
MVF"S:2^*7C 6;1,KD2Y)QTZ?OM0ADAG33+0=YR*69,ZOF<\\S$B\6$GU3<\9
M,VB=9T)?]N;&+,[[?3V9LYSJ([E@PGXSE2JGQIZJ65\O%*-I:91G?1)%PWY.
MN>B-+LIK=VIT(9<FXX+=*:27>4[5\S7+Y.JRAWLO%[[PV=P4%_JCBP6=L7MF
M'A9WRI[U&Y64YTQH+@52;'K9N\+G25P:E"W^X&RE-XY1$<JCE-^*DYOTLA<5
M'K&,34PA0>W'$QNS+"N4K!__U**]YIZ%X>;QB_K',G@;S"/5;"RS/WEJYI>]
MTQY*V90N,_-%KCZQ.J#C0F\B,UW^1ZNJ[;&]XV2IC<QK8WN><U%]TG4-8L,
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
M4!: [U=2FN>%_4 W $__ U!+ P04    " "*@%96*X"]OXT"  "[!@  &@
M 'AL+W=O<FMS:&5E=',O<VAE970Q,#$N>&ULK57?3]LP$/Y73AF:0&+D5VDG
MED:B9!,\,%44MH=I#VYR:2P2.[.=%O[[V4Z:M2AT//"2^,[W?;X[VY^C#1>/
MLD!4\%253$Z=0JGZPG5E6F!%Y!FOD>F9G(N**&V*E2MK@22SH*IT \\;NQ6A
MS(DCZYN+..*-*BG#N0#95!41SS,L^6;J^,[6<4=7A3(.-XYJLL(%JH=Z+K3E
M]BP9K9!)RAD(S*?.I7^1C$R\#?A!<2-WQF J67+^:(R;;.IX)B$L,56&@>C?
M&J^P+ V13N-/Q^GT2QK@[GC+_LW6KFM9$HE7O/Q),U5,G<\.9)B3IE1W?'.-
M73WGAB_EI;1?V'2QG@-I(Q6O.K#.H**L_9.GK@\[ '_\"B#H ,%+P.@50-@!
MPK<"1AW MMIM2[%]2(@B<23X!H2)UFQF8)MIT;I\RLRV+Y30LU3C5'S#4EXA
MW),GE'"\9\T)S4[ANSYZ/#<NN,.\89D\@>,$%:&E'GV"AT4"QT<G< 24P7W!
M&TET3.0JG9Q9PDV[1&9M(L$KB?@!W'*F"@E?68;9/H&KJ^I+"[:ES8*#C FF
M9Q#ZIQ!X03"0T-7;X?X /'D[W#M03=AO5&CYPO]N%"14IB67C4#X=;F42NC+
M\WNHXRWC:)C1",J%K$F*4T<KAD2Q1B?^^,$?>U^&NO6>9,D[D>UU<M1W<G2(
M/9Z39ZU;2NIKE"%HY=0GU_96F6-_"@S54#-;THDE-6*ZCH.)YT\B=[W;I8&H
MP)N,]Z.2@2@_//?[J+8N=^=:5RA65AXEI+QAJKT&O;=7X$LK/"_\,ZW,K9#^
MHVEE_9:(%6422LPUI7<V.7= M%+9&HK75CR67&DILL-"ORXH3(">SSE76\,L
MT+]7\5]02P,$%     @ BH!65A=8*CRD @  ]@<  !H   !X;"]W;W)K<VAE
M971S+W-H965T,3 R+GAM;*U5VV[;, S]%<$#AA98ZTO<;.@2 TW<8076(6BP
M[6'8@V+3L5!+\B0Y:?]^E.QX29L$?<B+K0O/(7DDD:.U5(^Z!##DB5="C[W2
MF/K:]W56 J?Z4M8@<*>0BE.#4[7T=:V Y@[$*S\*@J'/*1->,G)K,Y6,9&,J
M)F"FB&XXI^IY I5<C[W0VRP\L&5I[(*?C&JZA#F8'_5,X<SO67+&06@F!5%0
MC+V;\#J]LO;.X">#M=X:$YO)0LI'.[G+QUY@ X(*,F,9*/Y6,(6JLD08QM^.
MT^M=6N#V>,/^Q>6.N2RHAJFL?K'<E&/ODT=R*&A3F0>Y_@I=/B[ 3%;:?<FZ
MLPT\DC7:2-Z!,0+.1/NG3YT.6X!P>  0=8#H)2 ^ !AT@,%; 7$'B)TR;2I.
MAY0:FHR47!-EK9'-#IR8#HWI,V&/?6X4[C+$F>26*L'$4I,:%)F75 $Y^TZ5
MHO8XSLE9"H:R2I^3"Z+MKA[Y!MU:L)]U+B:MB^B BS B]U*84I-;D4.^2^!C
MO'W0T2;H2724,87LD@S"#R0*HFA/0-.WP\,]\/3M\.!(-H/^" :.+S[ -Y6<
MXPN8&YD][E/W*-J6A6M=TPS&'KY[#6H%7O+^73@,/N]3YI1DZ8G(=E2+>]5B
MQSXXH-J-,"QG56/O*9E#UBAF&. =>\JJ!J\9*93D!+6M&T-=B9$%Z6_[K+_M
MO[\A,;DSP/6??>K'IU3_E&3IB<AVU+_JU;\Z>F>M^A>]_*+A"Q04!3Y<(UJ^
MH>.SO6B5Q(,@P/>SVA;HM=4+B_2U1;C#TZ;C;U5$#FKI.HLFF6R$:>M,O]HW
MKQM7LU^L3["IM3WH/TW;$>^I6C*A204%4@:7'S$RU7:9=F)D[>KN0AJLXFY8
M8F,&90UPOY#2;";60=_JDW]02P,$%     @ BH!65FQRH'V# P  - L  !H
M  !X;"]W;W)K<VAE971S+W-H965T,3 S+GAM;*V6VX[3,!"&7\4*"'4EV!R;
MP])&VFY < %:40X7B MOXC;6)G&PG1;>GK&3AFZ2[5:(FS9V9O[,-^/#+/:,
MWXN<$(E^E44EED8N97UEFB+-28G%):M)!6\VC)=8PI!O35%S@C/M5!:F8UF^
M66):&?%"S]WR>,$:6="*W'(DFK+$_/>*%&R_-&SC,/&);G.I)LQX4>,M61/Y
MI;[E,#)[E8R6I!*458B3S=*XMJ^22-EK@Z^4[,71,U(D=XS=J\'[;&E8*B!2
MD%0J!0Q_.W)#BD()01@_.TVC_Z1R/'X^J+_5[,!RAP6Y8<4WFLE\:80&RL@&
M-X7\Q/;O2,<S5WHI*X3^1?O.UC)0V@C)RLX9(BAIU?[C7UT>CAQL_Q$'IW-P
MA@[>(PYNY^">Z^!U#I[.3(NB\Y!@B>,%9WO$E36HJ0>=3.T-^+1295]+#F\I
M^,GX#>85K;8"U82C=8XY0;,UK*VL*0AB&W3#RKJ16-<(ABLL:(IPE:&$%HTD
M&1H+7*!90B2FA;A K]"7=8)FSR^04*\$HA7ZG+-&@(1XB9X_&"],"40J+C/M
MHE^UT3N/1&\[Z .K9"[0FRHCV4,!$U+1Y\,YY&/EG%1,2'J)7/LE<BS'F0CH
MYGQW>\(].=_=.D'C]M5UM9[[5'5O^^I^O[X3DL-V^S&5[E;.FY931]"5J'%*
ME@:<,8+P'3'B%\]LWWH]E:K_*9;\)[$':?3Z-'JGU./W5<I*@C:<E2B%]4:K
M!K**X.SE>F=,KMQ6,M"2ZO#=Q:'C6?["W!WG:&P5>'-[8)5,:+E.9/=6#ZCF
M/=7\'*I9P03L5 V74='QP<X^C==J^T<A60.TL85MV^Z ;&STR@X#9SZ-YO=H
M_DFTCW!?4HTW%;I_5F7&5L'<=Z)!_&,KWYO[_G3X01]^<#+\;_JV@A+@'91@
M2PZ')US;0L))J1;?#$[.=OIBBC$8Y=5UK&C(.&45!L,:35GYOC?-&/:,X4E&
MN%A*N%/@@DOO8:GI=:8O%B"2G*8*OWWY!&DXBFZ$.3:Q0WL .;9QYH\@1CUB
M]$]E5)2PS6!2:.HG *.)]-N1,V"<L'*M(X*6<DHKLL,!IWG43Y2$;W5?)B#F
MII+M5=K/]JW?M>YX!O,K: G;#NZO3-M/?L!\2X&](!N0M"X#. AXVZ.U \EJ
MW;7<,0D]D'[,H:TE7!G ^PUC\C!0'^@;Y?@/4$L#!!0    ( (J 5E:RX[H
M3P0  &@>   :    >&PO=V]R:W-H965T<R]S:&5E=#$P-"YX;6S%F5V/FS@4
MAO^*Q595*Z4#)GPDLTFD-E!MI;8:S6RW%ZN]\("3N 7,VLYD*NV/KPT,"3,,
M3:03[<T$R'D?PWOPR1Q[MN/BN]Q0JM!]GA5R;FV4*B]M6R8;FA-YP4M:Z&]6
M7.1$Z5.QMF4I*$DK49[9KN,$=DY882UFU;4KL9CQK<I80:\$DML\)^+'.YKQ
MW=S"UL.%:[;>*'/!7LQ*LJ8W5'TIKX0^LUM*RG):2,8+).AJ;KW%ES&>&$$5
M\1>C.WEPC,RCW'+^W9Q\2.>68^Z(9C11!D'TQQU=TBPS)'T?_S90JQW3" ^/
M'^COJX?7#W-+)%WR["M+U69N32R4TA799NJ:[_Z@S0/YAI?P3%9_T:Z.#1T+
M)5NI>-Z(]1WDK*@_R7UCQ($ >\\(W$;@'BL8-X+QL0*O$7C'"OQ&4#VZ73][
M95Q$%%G,!-\A8:(US1Q4[E=J[1<KS(MRHX3^EFF=6GRDVF6)WJ#/1 ABDH9>
M1501ELG7^NJ7FPB]>O$:O4"L0']N^%:2(I4S6^FA#<!.FF'>U<.XSPP3T>0"
MC?$(N8[K]LB7Q\MQCSPZ7N[TR..CY7C:E=O:[M9SM_7<K7CC9SV7DM(1JKP?
MH8C*1+"RFC=_?]2QZ(.BN?RGS^4:[/6#35&YE"5)Z-S254-2<4>MQ<O?<.#\
MWN<Y)"R"A,5 L$YVQFUVQD/TQ7*;;[-Z)M#52M<SQ%>HT!6/) G?%HH5:U0*
M5B2LS*B9%B45C*<FBJ2\2F-?YNI!PVI04[WO%A/7=:;Z?;H[S$E?F._ZDVY8
M]#0L],83Q^^&Q4_#@G \#;PVK..0USKD'>M07#DT0E>M!V\;#T;ZZ)NN7_I'
M1?7Y,3C$J6\R)"R"A,5 L$Z>_#9/_KGJC ^9'4A8! F+@6"=[ 1M=H+_H\X,
M#GIJYB!A$20LKF'!065[XTYQ?UT+VXR$@QGYQ J6;_,^5P>%I[H*"8L@83$0
MK./^I'5_<JYJ-8',#B0L@H3%0+!.=J9M=J:#<Z/*BNX,=8$B&5)4]$Z3809&
M.2_4IL_T0>&IID/"8B!8QW3L[+LS9[@DD?OG2M*P\M2W'I06@=)B*%HW!P<=
M,CY786K(4#F"I$6@M!B*ULW1OJ/&@RWAD>7I%Q#LHQ^4B+[EC>6P]&3O0;ME
M*%K7^WV_C(<;YFNS7%30%,5$%/J_UO[EH4'&R3,!DA:!TF(H6C<;^]X<>V>K
M5J ].2@M J7%4+1NCO9].1YL+,_5^C6C=I9[W' :/EH\6O;$^9[OA^ZC1::>
M."^83KWQHU6F)NZP&?,</P@F_>T8WG?(>+A%?E)9T'\(9/%I>-R3WW30-AF4
M%D/1NAG<=]0X/%LU NVY06D1*"V&HG5SM.^[\6#C>+9J!-J5@](B4%K<T [K
M9,]BE'VP26?V8#\1L6:%1!E=:9ES$>HJ*NIMS?I$\;+:M[OE2O&\.MQ0DE)A
M O3W*\[5PXG9"FPWEQ<_ 5!+ P04    " "*@%96"7(:G9,"   >!P  &@
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
M7(58IWG;W;8/DM6ZW]LRB=VCOLWP'P%P98#O=XS)QP<U0?\?8_4?4$L#!!0
M   ( (J 5E93> ZO_P(  !,+   :    >&PO=V]R:W-H965T<R]S:&5E=#$P
M-RYX;6RMEEUOFS 8A?^*Q:JIE=:"@0#)$J0VT;1)K13U8[N8=N$0)[%J,+--
MTO[[V8;2E%!2H=T$;'R.G_-B8H]WC#^*#<82/*4T$Q-K(V4^LFV1;'"*Q 7+
M<::>K!A/D51-OK9%SC%:&E%*;==Q CM%)+/BL>F;\WC,"DE)AN<<B")-$7^^
MPI3M)A:T7CINR7HC=8<=CW.TQG=8/N1SKEIV[;(D*<X$81G@>#6Q+N%H"HW
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
M(!&&HY'':.1H-+'2QWF1'L8P/<*@9-N4P7_;'5!,TND&E40&5DBNBA'G2,:
M%XZ(@",*CA$%HQ']7M1)AA(]U-;@<!FX>:0$2V*=/G-0QR-,K"! '>41A\,(
MCV&$HV',DUW:!**^:5I9IK6^M(#AA$ .==U8P;@J$@186*$ *H;E0+U$QT"B
M\3,LK?3@J4?6O;XD_G8L&"B64:-S1TV?9K$GLUX""3:X@:]PC>I^U%.ZO;K%
MOMSZ"3_A.W+1&-(U/ZT4;%7<RY(8D 0!9P/U1JCI/1WM?5=D^CQX1DLPAE&3
MLP^_3[?8EUL_@08)R368D'B%0J]NL2^W?L(-%Y)Q,#R#J3JGWD5*,DGL*QZD
MTY@H(KL( 1VG_.0RWX_)8"(9Y\0O>9)EQ2*I]65O7I3Z3-*;Z)?F<E[!E_)Q
MP[-/$)]NL2^W?C(-I1)YC8H<9>.S$^[3+?;EUD^X@6@R3M'G5*1+P&\9$\2>
MMX$Z&04V4(,Z0<E011JB)N-(??9<AP! ?#KCZN("$)PXPXPK8GA@[D8,6I-Q
MMGZ14R*W:YQS9ZP$9'H*8T_7(%F(10!'00W>TE&:>_54I[.QAVHK&$#%0FD?
M#T 5D*%!GQIPI./@^%GEZBEYS 8"&&U\[GCCU2WVY=9/G&%62J\PP%.OC.O5
M+?;EUD^X85PZBG0OK,5UC7M%% 3"6><!=)Q1'-E#!Z"C+"1X:.PPY$C'R=$4
M'/H?>MW$9]SQ[)/"IUOLRZV?3<.L5%RC"KURK5>WV)=;/^&&:^GX\NL+50@L
MHX)5Z.K@*@067,>JT- B]4:+U*4[*BBW5U\A&2;"7A0'9,T*^\ 2,C6H2#VC
M(G7Y+N3N@0* DLN0VE$!L*@/_$!0AA;I9;1(7;YC$672QD5 Q[G@H7.Z 3I,
M@V@@$&: D?D!1@:@H @M%)P#*D[MH&-0Q08B,;S(7N+%*EWJ$3=-,C  K\#H
MU2WVY=;/G %&=@U@9%Z!T:M;[,NMG_"3^^27 "-S 2^0 76FFH!.,B&<6U&
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
M)U14I@MY DR3M:T$9_*YRPX)QH' --+BCK1X)!G%D'Q"@G$@,(U/["D7YKU
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
M[LU=;O/\S)S[6EY58O'XCIW']P-]_ ]02P,$%     @ BH!65G[6,B8> P
M+D$  !H   !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<\W;2T[C0!2%X:V@
M+ #7K7>U@%%/F+;80!3,0^2EV*V&W7<$ SBE'O0$^1]9Y2C71QY\BBIUKGZ-
MV_7\?-A/3\_'Z>)UM]U/UZNG>3[^&(9I\S3NUM/EX3CNSY\\'$Z[]7Q>GAZ'
MXWKSLGX<!^]<'DY?9ZQNKK[.O+A[.X[_,_'P\/"\&7\>-K]WXW[^Q^#AS^'T
M,CV-X[RZN%N?'L?Y>C6\;C]O3\/[Q2[/DU<7M_?7J]/MO:V&I0-Y">27#Q0D
M4%@^4)1 <?E 20*EY0-E"927#U0D4%D^4)5 =?E 30*UY0.94QD=(%*'-4!K
M4ZX-X+4IV 80VY1L YAMBK8!U#9EVP!NF\)M +E-Z3: W:9X&T!OKWI[@-Y>
M]?8 O7WW8QN@MU>]/4!OKWI[@-Y>]?8 O;WJ[0%Z>]7; _3VJK<'Z.U5;P_0
M.ZC> :!W4+T#0.^@>@> WJ';+ 'H'53O - [J-X!H'=0O0- [Z!Z!X#>0?4.
M +V#ZAT >D?5.P+TCJIW!.@=5>\(T#NJWA&@=^PVNP%Z1]4[ O2.JG<$Z!U5
M[PC0.ZK>$:!W5+TC0.^D>B> WDGU3@"]D^J= 'HGU3L!]$ZJ=P+HG;H_*P%Z
M)]4[ ?1.JG<"Z)U4[P30.ZG>":!W5KTS0.^L>F> WEGUS@"]L^J= 7IGU3L#
M],ZJ=P;HG;O#)@"]L^J= 7IGU3L#],ZJ=P;H753O M"[J-X%H'=1O0M [Z)Z
M%X#>1?4N +V+ZET >A?5NP#T+MUA08#>1?4N +V+ZET >E?5NP+TKJIW!>A=
M5>\*T+NJWA6@=U6]*T#OJGI7@-Y5]:X O:OJ70%ZU^ZP-T#OJGI7@-Y-]6X
MO9OJW0!Z-]6[ ?1NJG<#Z-U4[P;0NZG>#:!W4[T;0.^F>C> WDWU;@"]6U?6
M >AMKJ_K /PVUQ5V'$!P<UUEQP$,-]>5=AQ <7-=;<<!'#?7%7<<0')S777'
M 2PWUY5W'$!S<UU]QP$\-]<5>!Q!]+Z R6A@]A7,[Q1]FM^VX_29Z&/=!?A.
MO>?S=\?/Y[\O/V[VK^&=Z^%KC.GF+U!+ P04    " "*@%964'Y NGP"  "Q
M/@  $P   %M#;VYT96YT7U1Y<&5S72YX;6S-VT]OFS 8Q_&W$G&M K8!&Z:F
MEW;7K8>] 09.@\(_8;=+W_T<TE;:U$6K,FG?"PAL/[\'6_K<N/[V/%FW.O3=
MX#;1SOOI4Y*X>F?[RL7C9(<PLAWGOO+A<7Y(IJK>5P\V44+HI!X';P>_]L<:
MT<WUG=U6CYU??3Z$UZX=ATTTV\Y%J]O3Q&/6)JJFJ6OKRH?QY&EH?DM9OR3$
M8>4RQ^W:R5V%"5'R;L)QY,\!+^N^/MEY;AN[NJ]F_Z7JPZSDT"7./W?6Q>=+
MO-/CN-VVM6W&^K$/2V(WS;9JW,Y:WW?QJ>C5^60?=MB>KO+B_*7,N< P\WX>
M)Q=.;+8?CWL]DN/J]10*V=FWYS_Q+3&4OOC[[/&T&]O\97;8WA_CO%_.PR7+
M[?(]_O6,W^I_L \%Z2.%])%!^L@A?6A('P;21P'IHX3T(06E$8JHDD*JI)@J
M*:A*BJJ2PJJDN"HIL$J*K(HBJZ+(JBBR*HJLBB*KHLBJ*+(JBJR*(JNBR)I2
M9$TILJ8465.*K"E%UI0B:TJ1-:7(FE)D32FR9A19,XJL&476C")K1I$UH\B:
M463-*+)F%%DSBJPY1=:<(FM.D36GR)I39,TILN8467.*K#E%UIPBJZ;(JBFR
M:HJLFB*KILBJ*;)JBJR:(JNFR*HILAJ*K(8BJZ'(:BBR&HJLAB*KH<AJ*+(:
MBJR&(FM!D;6@R%I09"THLA8460N*K 5%UH(B:T&1M:#(6E)D+2FREA192XJL
M)476DB)K29&UI,A:4F0M*;)*0:%5"HJM4E!PE8*BJQ047J6@^"H%!5@I*,)*
M02%6"HRQH-^Q_J>QW\=Q_X_CEWO<5^WPFI\L?ZK?_ 102P$"% ,4    " "*
M@%96!T%-8H$   "Q    $               @ $     9&]C4')O<',O87!P
M+GAM;%!+ 0(4 Q0    ( (J 5E;)CA=4[@   "L"   1              "
M :\   !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4 Q0    ( (J 5E:97)PC$ 8
M )PG   3              "  <P!  !X;"]T:&5M92]T:&5M93$N>&UL4$L!
M A0#%     @ BH!65IMG5B/A!P  AS   !@              ("!#0@  'AL
M+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4 Q0    ( (J 5E92O@,N/ (
M +T%   8              " @200  !X;"]W;W)K<VAE971S+W-H965T,BYX
M;6Q02P$"% ,4    " "*@%96KK!A*3,&  !7'0  &               @(&6
M$@  >&PO=V]R:W-H965T<R]S:&5E=#,N>&UL4$L! A0#%     @ BH!65ED,
MKV1O P  8 L  !@              ("!_Q@  'AL+W=O<FMS:&5E=',O<VAE
M970T+GAM;%!+ 0(4 Q0    ( (J 5E9)ADWJ8 8  #89   8
M  " @:0<  !X;"]W;W)K<VAE971S+W-H965T-2YX;6Q02P$"% ,4    " "*
M@%96"M/?YC0#   P"P  &               @($Z(P  >&PO=V]R:W-H965T
M<R]S:&5E=#8N>&UL4$L! A0#%     @ BH!65E[PS2N["   [B@  !@
M         ("!I"8  'AL+W=O<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0
M   ( (J 5E;PP1FLYPH  $AT   8              " @94O  !X;"]W;W)K
M<VAE971S+W-H965T."YX;6Q02P$"% ,4    " "*@%96;0S+;:,"  #J!@
M&               @(&R.@  >&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L!
M A0#%     @ BH!65L1BPL_\%P  -T@  !D              ("!BST  'AL
M+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q02P$"% ,4    " "*@%96LB?;Q[P&
M  "+$   &0              @(&^50  >&PO=V]R:W-H965T<R]S:&5E=#$Q
M+GAM;%!+ 0(4 Q0    ( (J 5E9O87<&VP(  # &   9              "
M@;%<  !X;"]W;W)K<VAE971S+W-H965T,3(N>&UL4$L! A0#%     @ BH!6
M5H_Z[>VW P  +0@  !D              ("!PU\  'AL+W=O<FMS:&5E=',O
M<VAE970Q,RYX;6Q02P$"% ,4    " "*@%96Q%0!9 0#  ":!@  &0
M        @(&Q8P  >&PO=V]R:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0
M   ( (J 5E9<\U=,U0P  .<O   9              " @>QF  !X;"]W;W)K
M<VAE971S+W-H965T,34N>&UL4$L! A0#%     @ BH!65K1>I/VM!P   A,
M !D              ("!^',  'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q0
M2P$"% ,4    " "*@%96%8ODH'T#   _!P  &0              @('<>P
M>&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;%!+ 0(4 Q0    ( (J 5E8L1 ]J
MBP<  %45   9              " @9!_  !X;"]W;W)K<VAE971S+W-H965T
M,3@N>&UL4$L! A0#%     @ BH!65G4U:)8]"   +A0  !D
M ("!4H<  'AL+W=O<FMS:&5E=',O<VAE970Q.2YX;6Q02P$"% ,4    " "*
M@%96=[I&,= #   Q"0  &0              @('&CP  >&PO=V]R:W-H965T
M<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    ( (J 5E;&EZW_UP\  'PQ   9
M          " @<V3  !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#
M%     @ BH!65L!$E9Y\!@  S!   !D              ("!VZ,  'AL+W=O
M<FMS:&5E=',O<VAE970R,BYX;6Q02P$"% ,4    " "*@%96V/UH)AT)  #?
M&   &0              @(&.J@  >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM
M;%!+ 0(4 Q0    ( (J 5E;B7.9K1P8  ) /   9              " @>*S
M  !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL4$L! A0#%     @ BH!65B>!
MA!K""P  Y!\  !D              ("!8+H  'AL+W=O<FMS:&5E=',O<VAE
M970R-2YX;6Q02P$"% ,4    " "*@%96]<LFWJ$$  "F"P  &0
M    @(%9Q@  >&PO=V]R:W-H965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    (
M (J 5E9"MUPG?P4  ,<-   9              " @3'+  !X;"]W;W)K<VAE
M971S+W-H965T,C<N>&UL4$L! A0#%     @ BH!65BNY)N+; @  )@8  !D
M             ("!Y]   'AL+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"
M% ,4    " "*@%96=[OZ*,((  "T%   &0              @('YTP  >&PO
M=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+ 0(4 Q0    ( (J 5E:,VA?[KA<
M %1-   9              " @?+<  !X;"]W;W)K<VAE971S+W-H965T,S N
M>&UL4$L! A0#%     @ BH!65D6^,'%D!   "0H  !D              ("!
MU_0  'AL+W=O<FMS:&5E=',O<VAE970S,2YX;6Q02P$"% ,4    " "*@%96
M\.'(S7D"  !;!0  &0              @(%R^0  >&PO=V]R:W-H965T<R]S
M:&5E=#,R+GAM;%!+ 0(4 Q0    ( (J 5E9P0$9DK@(  /(%   9
M      " @2+\  !X;"]W;W)K<VAE971S+W-H965T,S,N>&UL4$L! A0#%
M  @ BH!65@#,W/N# P  %0@  !D              ("!!_\  'AL+W=O<FMS
M:&5E=',O<VAE970S-"YX;6Q02P$"% ,4    " "*@%96U9AC5CL#  !#!P
M&0              @('! @$ >&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+
M 0(4 Q0    ( (J 5E9@>!-$8P4  ,L0   9              " @3,& 0!X
M;"]W;W)K<VAE971S+W-H965T,S8N>&UL4$L! A0#%     @ BH!65EBWD& F
M!0  IPT  !D              ("!S0L! 'AL+W=O<FMS:&5E=',O<VAE970S
M-RYX;6Q02P$"% ,4    " "*@%96^+#HTOP"  !1!@  &0
M@($J$0$ >&PO=V]R:W-H965T<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    ( (J
M5E8.-IZ8+0,  "\'   9              " @5T4 0!X;"]W;W)K<VAE971S
M+W-H965T,SDN>&UL4$L! A0#%     @ BH!65C$\/YEQ!P  W!0  !D
M         ("!P1<! 'AL+W=O<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4
M    " "*@%96G/QG75<#   ["   &0              @(%I'P$ >&PO=V]R
M:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4 Q0    ( (J 5E;"Q/+Y> H  !0?
M   9              " @?<B 0!X;"]W;W)K<VAE971S+W-H965T-#(N>&UL
M4$L! A0#%     @ BH!65OM5EU%]!   :@H  !D              ("!IBT!
M 'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6Q02P$"% ,4    " "*@%965*UX
M;+<$  #^"P  &0              @(%:,@$ >&PO=V]R:W-H965T<R]S:&5E
M=#0T+GAM;%!+ 0(4 Q0    ( (J 5E;M7$?IJP<  -D5   9
M  " @4@W 0!X;"]W;W)K<VAE971S+W-H965T-#4N>&UL4$L! A0#%     @
MBH!65N489-Z9 P  YP@  !D              ("!*C\! 'AL+W=O<FMS:&5E
M=',O<VAE970T-BYX;6Q02P$"% ,4    " "*@%960-+OR7($  "3"P  &0
M            @('Z0@$ >&PO=V]R:W-H965T<R]S:&5E=#0W+GAM;%!+ 0(4
M Q0    ( (J 5E9<Q*X)L04  '<-   9              " @:-' 0!X;"]W
M;W)K<VAE971S+W-H965T-#@N>&UL4$L! A0#%     @ BH!65KR* $O8 P
M\ T  !D              ("!BTT! 'AL+W=O<FMS:&5E=',O<VAE970T.2YX
M;6Q02P$"% ,4    " "*@%96-TVELX@%  "-*@  &0              @(&:
M40$ >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM;%!+ 0(4 Q0    ( (J 5E8>
MD%S*E0(  -L&   9              " @5E7 0!X;"]W;W)K<VAE971S+W-H
M965T-3$N>&UL4$L! A0#%     @ BH!65HUZ\%QK!   /Q8  !D
M     ("!)5H! 'AL+W=O<FMS:&5E=',O<VAE970U,BYX;6Q02P$"% ,4
M" "*@%96W#3TV?<"  "9"@  &0              @(''7@$ >&PO=V]R:W-H
M965T<R]S:&5E=#4S+GAM;%!+ 0(4 Q0    ( (J 5E8[M(W\&@,  -H+   9
M              " @?5A 0!X;"]W;W)K<VAE971S+W-H965T-30N>&UL4$L!
M A0#%     @ BH!65BR,X-;2 @  )@@  !D              ("!1F4! 'AL
M+W=O<FMS:&5E=',O<VAE970U-2YX;6Q02P$"% ,4    " "*@%96-2FLW2H#
M  !)"0  &0              @(%/: $ >&PO=V]R:W-H965T<R]S:&5E=#4V
M+GAM;%!+ 0(4 Q0    ( (J 5E;H9'??"P,  "L)   9              "
M@;!K 0!X;"]W;W)K<VAE971S+W-H965T-3<N>&UL4$L! A0#%     @ BH!6
M5F_1ZL*B"   1&\  !D              ("!\FX! 'AL+W=O<FMS:&5E=',O
M<VAE970U."YX;6Q02P$"% ,4    " "*@%96^%AHL>T&  "[/@  &0
M        @('+=P$ >&PO=V]R:W-H965T<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0
M   ( (J 5E9R/%,\. 8  *,O   9              " @>]^ 0!X;"]W;W)K
M<VAE971S+W-H965T-C N>&UL4$L! A0#%     @ BH!65C?C?TLK P  :@T
M !D              ("!7H4! 'AL+W=O<FMS:&5E=',O<VAE970V,2YX;6Q0
M2P$"% ,4    " "*@%96?F;B8E8%  "M'0  &0              @(' B $
M>&PO=V]R:W-H965T<R]S:&5E=#8R+GAM;%!+ 0(4 Q0    ( (J 5E8PU4)L
M_P,  *H2   9              " @4V. 0!X;"]W;W)K<VAE971S+W-H965T
M-C,N>&UL4$L! A0#%     @ BH!65@)1X%SD!   $AT  !D
M ("!@Y(! 'AL+W=O<FMS:&5E=',O<VAE970V-"YX;6Q02P$"% ,4    " "*
M@%96G)ZVK&\"  "E!0  &0              @(&>EP$ >&PO=V]R:W-H965T
M<R]S:&5E=#8U+GAM;%!+ 0(4 Q0    ( (J 5E;Y0J?4F (  .$&   9
M          " @42: 0!X;"]W;W)K<VAE971S+W-H965T-C8N>&UL4$L! A0#
M%     @ BH!65I3YF1V& @  -P8  !D              ("!$YT! 'AL+W=O
M<FMS:&5E=',O<VAE970V-RYX;6Q02P$"% ,4    " "*@%962^;CA.\#  "[
M#P  &0              @('0GP$ >&PO=V]R:W-H965T<R]S:&5E=#8X+GAM
M;%!+ 0(4 Q0    ( (J 5E:D+0U=S0(  &8(   9              " @?:C
M 0!X;"]W;W)K<VAE971S+W-H965T-CDN>&UL4$L! A0#%     @ BH!65I2^
MZHM)"0  F&@  !D              ("!^J8! 'AL+W=O<FMS:&5E=',O<VAE
M970W,"YX;6Q02P$"% ,4    " "*@%968\HY+0@#  #Y"   &0
M    @(%ZL $ >&PO=V]R:W-H965T<R]S:&5E=#<Q+GAM;%!+ 0(4 Q0    (
M (J 5E8O-SV(TP,  &\2   9              " @;FS 0!X;"]W;W)K<VAE
M971S+W-H965T-S(N>&UL4$L! A0#%     @ BH!65IK^NO]M!   QA,  !D
M             ("!P[<! 'AL+W=O<FMS:&5E=',O<VAE970W,RYX;6Q02P$"
M% ,4    " "*@%96 E=O!T8#  "_"   &0              @(%GO $ >&PO
M=V]R:W-H965T<R]S:&5E=#<T+GAM;%!+ 0(4 Q0    ( (J 5E:H#Y1G7P0
M .L1   9              " @>2_ 0!X;"]W;W)K<VAE971S+W-H965T-S4N
M>&UL4$L! A0#%     @ BH!65CK?+%.K @  [08  !D              ("!
M>L0! 'AL+W=O<FMS:&5E=',O<VAE970W-BYX;6Q02P$"% ,4    " "*@%96
MX+B;RD<%  "Q(   &0              @(%<QP$ >&PO=V]R:W-H965T<R]S
M:&5E=#<W+GAM;%!+ 0(4 Q0    ( (J 5E9>"]K/) H  !]S   9
M      " @=K, 0!X;"]W;W)K<VAE971S+W-H965T-S@N>&UL4$L! A0#%
M  @ BH!65F3?FC?8 P  NQ   !D              ("!-=<! 'AL+W=O<FMS
M:&5E=',O<VAE970W.2YX;6Q02P$"% ,4    " "*@%965G\@H2((  #<5P
M&0              @(%$VP$ >&PO=V]R:W-H965T<R]S:&5E=#@P+GAM;%!+
M 0(4 Q0    ( (J 5E;NB<Q\& 0  .$6   9              " @9WC 0!X
M;"]W;W)K<VAE971S+W-H965T.#$N>&UL4$L! A0#%     @ BH!65NI!>:@5
M!   ;!$  !D              ("![.<! 'AL+W=O<FMS:&5E=',O<VAE970X
M,BYX;6Q02P$"% ,4    " "*@%962 C<*3,)  !K2P  &0
M@($X[ $ >&PO=V]R:W-H965T<R]S:&5E=#@S+GAM;%!+ 0(4 Q0    ( (J
M5E;EW3R;) 0  &D5   9              " @:+U 0!X;"]W;W)K<VAE971S
M+W-H965T.#0N>&UL4$L! A0#%     @ BH!65L$/M&G& P  5A   !D
M         ("!_?D! 'AL+W=O<FMS:&5E=',O<VAE970X-2YX;6Q02P$"% ,4
M    " "*@%96&CV5U)@"  #B!P  &0              @('Z_0$ >&PO=V]R
M:W-H965T<R]S:&5E=#@V+GAM;%!+ 0(4 Q0    ( (J 5E:;!%]3X ,  %T/
M   9              " @<D  @!X;"]W;W)K<VAE971S+W-H965T.#<N>&UL
M4$L! A0#%     @ BH!65HIERO+F @  *0<  !D              ("!X 0"
M 'AL+W=O<FMS:&5E=',O<VAE970X."YX;6Q02P$"% ,4    " "*@%96E2X2
M(0H%  #B(0  &0              @(']!P( >&PO=V]R:W-H965T<R]S:&5E
M=#@Y+GAM;%!+ 0(4 Q0    ( (J 5E803;BA\@,  #\/   9
M  " @3X- @!X;"]W;W)K<VAE971S+W-H965T.3 N>&UL4$L! A0#%     @
MBH!65H;YGIB5 P  1@\  !D              ("!9Q$" 'AL+W=O<FMS:&5E
M=',O<VAE970Y,2YX;6Q02P$"% ,4    " "*@%96PRQ+SDT%  "S(0  &0
M            @($S%0( >&PO=V]R:W-H965T<R]S:&5E=#DR+GAM;%!+ 0(4
M Q0    ( (J 5E;,YT+*:P,  .(-   9              " @;<: @!X;"]W
M;W)K<VAE971S+W-H965T.3,N>&UL4$L! A0#%     @ BH!65@?*)",I P
ME@D  !D              ("!61X" 'AL+W=O<FMS:&5E=',O<VAE970Y-"YX
M;6Q02P$"% ,4    " "*@%96@O8_/.("  !%"   &0              @(&Y
M(0( >&PO=V]R:W-H965T<R]S:&5E=#DU+GAM;%!+ 0(4 Q0    ( (J 5E;6
M2-Y[8@4  #D>   9              " @=(D @!X;"]W;W)K<VAE971S+W-H
M965T.38N>&UL4$L! A0#%     @ BH!65DK<V)?T!   314  !D
M     ("!:RH" 'AL+W=O<FMS:&5E=',O<VAE970Y-RYX;6Q02P$"% ,4
M" "*@%96H%&;-O8#  "8#0  &0              @(&6+P( >&PO=V]R:W-H
M965T<R]S:&5E=#DX+GAM;%!+ 0(4 Q0    ( (J 5E;K'<=(@ 4  &(G   9
M              " @<,S @!X;"]W;W)K<VAE971S+W-H965T.3DN>&UL4$L!
M A0#%     @ BH!65JDLL#B7 P  # L  !H              ("!>CD" 'AL
M+W=O<FMS:&5E=',O<VAE970Q,# N>&UL4$L! A0#%     @ BH!65BN O;^-
M @  NP8  !H              ("!23T" 'AL+W=O<FMS:&5E=',O<VAE970Q
M,#$N>&UL4$L! A0#%     @ BH!65A=8*CRD @  ]@<  !H
M ("!#D " 'AL+W=O<FMS:&5E=',O<VAE970Q,#(N>&UL4$L! A0#%     @
MBH!65FQRH'V# P  - L  !H              ("!ZD(" 'AL+W=O<FMS:&5E
M=',O<VAE970Q,#,N>&UL4$L! A0#%     @ BH!65K+CN@!/!   :!X  !H
M             ("!I48" 'AL+W=O<FMS:&5E=',O<VAE970Q,#0N>&UL4$L!
M A0#%     @ BH!65@ER&IV3 @  '@<  !H              ("!+$L" 'AL
M+W=O<FMS:&5E=',O<VAE970Q,#4N>&UL4$L! A0#%     @ BH!65F.S*JK"
M P  ;PP  !H              ("!]TT" 'AL+W=O<FMS:&5E=',O<VAE970Q
M,#8N>&UL4$L! A0#%     @ BH!65E-X#J__ @  $PL  !H
M ("!\5$" 'AL+W=O<FMS:&5E=',O<VAE970Q,#<N>&UL4$L! A0#%     @
MBH!65D643F$U @  U00  !H              ("!*%4" 'AL+W=O<FMS:&5E
M=',O<VAE970Q,#@N>&UL4$L! A0#%     @ BH!65LGWO#^8"   OS\  !H
M             ("!E5<" 'AL+W=O<FMS:&5E=',O<VAE970Q,#DN>&UL4$L!
M A0#%     @ BH!65DK:0T&^!@  F#4  !H              ("!96 " 'AL
M+W=O<FMS:&5E=',O<VAE970Q,3 N>&UL4$L! A0#%     @ BH!65@;FEU/!
M P  '!   !H              ("!6V<" 'AL+W=O<FMS:&5E=',O<VAE970Q
M,3$N>&UL4$L! A0#%     @ BH!65C!8!--' P  K!0   T
M ( !5&L" 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " "*@%96EXJ[',     3
M @  "P              @ '&;@( 7W)E;',O+G)E;'-02P$"% ,4    " "*
M@%96-OV5A78'  "C2   #P              @ &O;P( >&PO=V]R:V)O;VLN
M>&UL4$L! A0#%     @ BH!65G[6,B8> P  +D$  !H              ( !
M4G<" 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ BH!6
M5E!^0+I\ @  L3X  !,              ( !J'H" %M#;VYT96YT7U1Y<&5S
;72YX;6Q02P4&     '< =P#$(   57T"

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>129
<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>130
<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>131
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>368</ContextCount>
  <ElementCount>491</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>98</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>10</UnitCount>
  <MyReports>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - Document - Audit Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AuditInformation</Role>
      <ShortName>Audit Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - Statement - Consolidated Statements of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations</Role>
      <ShortName>Consolidated Statements of Operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>0000008 - Statement - Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>0000009 - Statement - Consolidated Statements of Stockholders' Equity (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - Disclosure - Revenue (Notes)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.gibraltar1.com/role/RevenueNotes</Role>
      <ShortName>Revenue (Notes)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - Accounts Receivable</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccountsReceivable</Role>
      <ShortName>Accounts Receivable</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Property, Plant, and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PropertyPlantandEquipment</Role>
      <ShortName>Property, Plant, and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Acquisitions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/Acquisitions</Role>
      <ShortName>Acquisitions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - Disclosure - Goodwill and Related Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssets</Role>
      <ShortName>Goodwill and Related Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Accrued Expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccruedExpenses</Role>
      <ShortName>Accrued Expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/Debt</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>0000019 - Disclosure - Pension and Other Postretirement Benefits</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefits</Role>
      <ShortName>Pension and Other Postretirement Benefits</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>0000020 - Disclosure - Accumulated Other Comprehensive Income (Loss)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLoss</Role>
      <ShortName>Accumulated Other Comprehensive Income (Loss)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>0000021 - Disclosure - Equity-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensation</Role>
      <ShortName>Equity-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>0000022 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>0000023 - Disclosure - Discontinued Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DiscontinuedOperations</Role>
      <ShortName>Discontinued Operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>0000024 - Disclosure - Exit Activity Costs and Asset Impairments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairments</Role>
      <ShortName>Exit Activity Costs and Asset Impairments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>0000025 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>0000026 - Disclosure - Earnings per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EarningsperShare</Role>
      <ShortName>Earnings per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>0000027 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>0000028 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>0000029 - Disclosure - Segment Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SegmentInformation</Role>
      <ShortName>Segment Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>0000030 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>0000031 - Disclosure - Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables</Role>
      <ShortName>Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>0000032 - Disclosure - Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/RevenueTables</Role>
      <ShortName>Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/RevenueNotes</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>0000033 - Disclosure - Accounts Receivable (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccountsReceivableTables</Role>
      <ShortName>Accounts Receivable (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AccountsReceivable</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>0000034 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/Inventories</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>0000035 - Disclosure - Property, Plant, and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PropertyPlantandEquipmentTables</Role>
      <ShortName>Property, Plant, and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PropertyPlantandEquipment</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>0000036 - Disclosure - Acquisitions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AcquisitionsTables</Role>
      <ShortName>Acquisitions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/Acquisitions</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>0000037 - Disclosure - Goodwill and Related Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables</Role>
      <ShortName>Goodwill and Related Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssets</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>0000038 - Disclosure - Accrued Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccruedExpensesTables</Role>
      <ShortName>Accrued Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AccruedExpenses</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>0000039 - Disclosure - Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DebtTables</Role>
      <ShortName>Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/Debt</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>0000040 - Disclosure - Pension and Other Postretirement Benefits (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables</Role>
      <ShortName>Pension and Other Postretirement Benefits (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefits</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>0000041 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossTables</Role>
      <ShortName>Accumulated Other Comprehensive Income (Loss) (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLoss</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>0000042 - Disclosure - Equity-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationTables</Role>
      <ShortName>Equity-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensation</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>0000043 - Disclosure - Discontinued Operations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DiscontinuedOperationsTables</Role>
      <ShortName>Discontinued Operations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DiscontinuedOperations</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>0000044 - Disclosure - Exit Activity Costs and Asset Impairments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables</Role>
      <ShortName>Exit Activity Costs and Asset Impairments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairments</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>0000045 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxes</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>0000046 - Disclosure - Earnings per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EarningsperShareTables</Role>
      <ShortName>Earnings per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EarningsperShare</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>0000047 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/Leases</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>0000048 - Disclosure - Segment Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SegmentInformationTables</Role>
      <ShortName>Segment Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SegmentInformation</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>0000049 - Disclosure - Summary of Significant Accounting Policies (Summary of Activity Recorded within the Allowance for Doubtful Accounts) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails</Role>
      <ShortName>Summary of Significant Accounting Policies (Summary of Activity Recorded within the Allowance for Doubtful Accounts) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>0000050 - Disclosure - Summary of Significant Accounting Policies (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails</Role>
      <ShortName>Summary of Significant Accounting Policies (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>0000051 - Disclosure - Summary of Significant Accounting Policies (Summary of Interest Capitalized and Depreciation Expense) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails</Role>
      <ShortName>Summary of Significant Accounting Policies (Summary of Interest Capitalized and Depreciation Expense) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>0000052 - Disclosure - Revenue - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/RevenueNarrativeDetails</Role>
      <ShortName>Revenue - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>0000053 - Disclosure - Revenue - Contract Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails</Role>
      <ShortName>Revenue - Contract Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>0000054 - Disclosure - Accounts Receivable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccountsReceivableDetails</Role>
      <ShortName>Accounts Receivable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AccountsReceivableTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>0000055 - Disclosure - Inventories (Schedule of Inventories) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails</Role>
      <ShortName>Inventories (Schedule of Inventories) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/InventoriesTables</ParentRole>
      <Position>55</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>0000056 - Disclosure - Inventories (Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails</Role>
      <ShortName>Inventories (Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/InventoriesTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>0000057 - Disclosure - Property, Plant, and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails</Role>
      <ShortName>Property, Plant, and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PropertyPlantandEquipmentTables</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>0000058 - Disclosure - Acquisitions (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails</Role>
      <ShortName>Acquisitions (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AcquisitionsTables</ParentRole>
      <Position>58</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>0000059 - Disclosure - Acquisitions (Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails</Role>
      <ShortName>Acquisitions (Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AcquisitionsTables</ParentRole>
      <Position>59</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>0000060 - Disclosure - Acquisitions (Schedule of Acquired Intangible Assets) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails</Role>
      <ShortName>Acquisitions (Schedule of Acquired Intangible Assets) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AcquisitionsTables</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>0000061 - Disclosure - Acquisitions (Acquisition Related Costs) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails</Role>
      <ShortName>Acquisitions (Acquisition Related Costs) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AcquisitionsTables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>0000062 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Changes in Carrying Amount of Goodwill) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails</Role>
      <ShortName>Goodwill and Related Intangible Assets (Schedule of Changes in Carrying Amount of Goodwill) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables</ParentRole>
      <Position>62</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>0000063 - Disclosure - Goodwill and Related Intangible Assets (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails</Role>
      <ShortName>Goodwill and Related Intangible Assets (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>0000064 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Acquired Intangible Assets) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails</Role>
      <ShortName>Goodwill and Related Intangible Assets (Schedule of Acquired Intangible Assets) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>0000065 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Impairment Charges) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails</Role>
      <ShortName>Goodwill and Related Intangible Assets (Schedule of Impairment Charges) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables</ParentRole>
      <Position>65</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>0000066 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Amortization Expense) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails</Role>
      <ShortName>Goodwill and Related Intangible Assets (Schedule of Amortization Expense) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>0000067 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Future Amortization Expense) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails</Role>
      <ShortName>Goodwill and Related Intangible Assets (Schedule of Future Amortization Expense) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables</ParentRole>
      <Position>67</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>0000068 - Disclosure - Accrued Expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccruedExpensesDetails</Role>
      <ShortName>Accrued Expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AccruedExpensesTables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>0000069 - Disclosure - Debt (Schedule of Long-term Debt) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails</Role>
      <ShortName>Debt (Schedule of Long-term Debt) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DebtTables</ParentRole>
      <Position>69</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>0000070 - Disclosure - Debt (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DebtNarrativeDetails</Role>
      <ShortName>Debt (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DebtTables</ParentRole>
      <Position>70</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>0000071 - Disclosure - Debt (Schedule of Cash Paid for Interest) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails</Role>
      <ShortName>Debt (Schedule of Cash Paid for Interest) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DebtTables</ParentRole>
      <Position>71</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>0000072 - Disclosure - Pension and Other Postretirement Benefits (Schedule of Total Expense for All Retirement Plans) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails</Role>
      <ShortName>Pension and Other Postretirement Benefits (Schedule of Total Expense for All Retirement Plans) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables</ParentRole>
      <Position>72</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>0000073 - Disclosure - Pension and Other Postretirement Benefits (Changes in the Accumulated Postretirement Benefit Obligation) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails</Role>
      <ShortName>Pension and Other Postretirement Benefits (Changes in the Accumulated Postretirement Benefit Obligation) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables</ParentRole>
      <Position>73</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>0000074 - Disclosure - Pension and Other Postretirement Benefits (Amounts Recognized in the Consolidated Financial Statements) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails</Role>
      <ShortName>Pension and Other Postretirement Benefits (Amounts Recognized in the Consolidated Financial Statements) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>0000075 - Disclosure - Pension and Other Postretirement Benefits (Components of Net Periodic Postretirement Benefit Cost) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails</Role>
      <ShortName>Pension and Other Postretirement Benefits (Components of Net Periodic Postretirement Benefit Cost) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables</ParentRole>
      <Position>75</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>0000076 - Disclosure - Pension and Other Postretirement Benefits (Expected Benefit Payments from the Plan) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails</Role>
      <ShortName>Pension and Other Postretirement Benefits (Expected Benefit Payments from the Plan) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables</ParentRole>
      <Position>76</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>0000077 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails</Role>
      <ShortName>Accumulated Other Comprehensive Income (Loss) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossTables</ParentRole>
      <Position>77</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>0000078 - Disclosure - Equity-Based Compensation (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails</Role>
      <ShortName>Equity-Based Compensation (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>78</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>0000079 - Disclosure - Equity-Based Compensation (Summary of Compensation Expense Connection with Awards) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails</Role>
      <ShortName>Equity-Based Compensation (Summary of Compensation Expense Connection with Awards) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>79</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>0000080 - Disclosure - Equity-Based Compensation (Schedule of Number of Awards and Weighted Average Grant Date Fair Value) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails</Role>
      <ShortName>Equity-Based Compensation (Schedule of Number of Awards and Weighted Average Grant Date Fair Value) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>0000081 - Disclosure - Equity-Based Compensation (Summary of Ranges of Outstanding and Exercisable Options) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails</Role>
      <ShortName>Equity-Based Compensation (Summary of Ranges of Outstanding and Exercisable Options) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>81</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>0000082 - Disclosure - Equity-Based Compensation (Summary of Stock Option Transactions) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails</Role>
      <ShortName>Equity-Based Compensation (Summary of Stock Option Transactions) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>82</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>0000083 - Disclosure - Equity-Based Compensation (Summary of Information about Restricted Stock Units and Weighted Average Grant Date Fair Value) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails</Role>
      <ShortName>Equity-Based Compensation (Summary of Information about Restricted Stock Units and Weighted Average Grant Date Fair Value) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>83</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>0000084 - Disclosure - Equity-Based Compensation (Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails</Role>
      <ShortName>Equity-Based Compensation (Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>84</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>0000085 - Disclosure - Equity-Based Compensation (Cash Paid to Settle Liability Awards) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails</Role>
      <ShortName>Equity-Based Compensation (Cash Paid to Settle Liability Awards) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EquityBasedCompensationTables</ParentRole>
      <Position>85</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>0000086 - Disclosure - Fair Value Measurements (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails</Role>
      <ShortName>Fair Value Measurements (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/FairValueMeasurements</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>0000087 - Disclosure - Discontinued Operations (Schedule of Disposal Group) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails</Role>
      <ShortName>Discontinued Operations (Schedule of Disposal Group) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DiscontinuedOperationsTables</ParentRole>
      <Position>87</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>0000088 - Disclosure - Discontinued Operations (Net Sales and Operating Loss for Held for Sale Operations) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails</Role>
      <ShortName>Discontinued Operations (Net Sales and Operating Loss for Held for Sale Operations) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DiscontinuedOperationsTables</ParentRole>
      <Position>88</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>0000089 - Disclosure - Discontinued Operations (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails</Role>
      <ShortName>Discontinued Operations (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DiscontinuedOperationsTables</ParentRole>
      <Position>89</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>0000090 - Disclosure - Discontinued Operations (Components of Income from Discontinued Operations before Taxes, Including the Interest Allocated to Discontinued Operations) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails</Role>
      <ShortName>Discontinued Operations (Components of Income from Discontinued Operations before Taxes, Including the Interest Allocated to Discontinued Operations) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/DiscontinuedOperationsTables</ParentRole>
      <Position>90</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>0000091 - Disclosure - Exit Activity Costs and Asset Impairments (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails</Role>
      <ShortName>Exit Activity Costs and Asset Impairments (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables</ParentRole>
      <Position>91</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>0000092 - Disclosure - Exit Activity Costs and Asset Impairments (Schedule Of Asset Impairment Charges Related To Restructuring Activities) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails</Role>
      <ShortName>Exit Activity Costs and Asset Impairments (Schedule Of Asset Impairment Charges Related To Restructuring Activities) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables</ParentRole>
      <Position>92</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>0000093 - Disclosure - Exit Activity Costs and Asset Impairments (Summary Of Exit Activity Costs And Asset Impairments Recorded in the Consolidated Statements of Operations) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails</Role>
      <ShortName>Exit Activity Costs and Asset Impairments (Summary Of Exit Activity Costs And Asset Impairments Recorded in the Consolidated Statements of Operations) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables</ParentRole>
      <Position>93</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>0000094 - Disclosure - Exit Activity Costs and Asset Impairments (Reconciles Of Liability For Exit Activity Costs Relating To Facility Consolidation Efforts) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails</Role>
      <ShortName>Exit Activity Costs and Asset Impairments (Reconciles Of Liability For Exit Activity Costs Relating To Facility Consolidation Efforts) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables</ParentRole>
      <Position>94</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>0000095 - Disclosure - Income Taxes (Components of Income (Loss) before Taxes from Continuing Operations) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails</Role>
      <ShortName>Income Taxes (Components of Income (Loss) before Taxes from Continuing Operations) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxesTables</ParentRole>
      <Position>95</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>0000096 - Disclosure - Income Taxes (Benefit of) Provision for Income Taxes) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails</Role>
      <ShortName>Income Taxes (Benefit of) Provision for Income Taxes) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxesTables</ParentRole>
      <Position>96</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R97.htm</HtmlFileName>
      <LongName>0000097 - Disclosure - Income Taxes (Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails</Role>
      <ShortName>Income Taxes (Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxesTables</ParentRole>
      <Position>97</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R98.htm</HtmlFileName>
      <LongName>0000098 - Disclosure - Income Taxes (Deferred Tax Liabilities (Assets)) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails</Role>
      <ShortName>Income Taxes (Deferred Tax Liabilities (Assets)) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxesTables</ParentRole>
      <Position>98</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R99.htm</HtmlFileName>
      <LongName>0000099 - Disclosure - Income Taxes (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails</Role>
      <ShortName>Income Taxes (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxesTables</ParentRole>
      <Position>99</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R100.htm</HtmlFileName>
      <LongName>0000100 - Disclosure - Income Taxes (Summary of Valuation Allowance) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails</Role>
      <ShortName>Income Taxes (Summary of Valuation Allowance) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxesTables</ParentRole>
      <Position>100</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R101.htm</HtmlFileName>
      <LongName>0000101 - Disclosure - Income Taxes (Income Taxes Paid, Net of Tax Refunds) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails</Role>
      <ShortName>Income Taxes (Income Taxes Paid, Net of Tax Refunds) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/IncomeTaxesTables</ParentRole>
      <Position>101</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R102.htm</HtmlFileName>
      <LongName>0000102 - Disclosure - Earnings per Share (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails</Role>
      <ShortName>Earnings per Share (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EarningsperShareTables</ParentRole>
      <Position>102</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R103.htm</HtmlFileName>
      <LongName>0000103 - Disclosure - Earnings per Share (Schedule of Computation of Basic and Diluted Earnings per Share) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails</Role>
      <ShortName>Earnings per Share (Schedule of Computation of Basic and Diluted Earnings per Share) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/EarningsperShareTables</ParentRole>
      <Position>103</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R104.htm</HtmlFileName>
      <LongName>0000104 - Disclosure - Leases - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/LeasesNarrativeDetails</Role>
      <ShortName>Leases - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>104</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R105.htm</HtmlFileName>
      <LongName>0000105 - Disclosure - Leases - Assets and Liabilities of Lessee (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails</Role>
      <ShortName>Leases - Assets and Liabilities of Lessee (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>105</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R106.htm</HtmlFileName>
      <LongName>0000106 - Disclosure - Leases - Schedule of Lease Cost and Assumptions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails</Role>
      <ShortName>Leases - Schedule of Lease Cost and Assumptions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>106</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R107.htm</HtmlFileName>
      <LongName>0000107 - Disclosure - Leases - Maturity of Lease Payments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails</Role>
      <ShortName>Leases - Maturity of Lease Payments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>107</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R108.htm</HtmlFileName>
      <LongName>0000108 - Disclosure - Segment Information (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SegmentInformationNarrativeDetails</Role>
      <ShortName>Segment Information (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SegmentInformationTables</ParentRole>
      <Position>108</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R109.htm</HtmlFileName>
      <LongName>0000109 - Disclosure - Segment Information (Measurements Used by Management to Assess Performance of Segments) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails</Role>
      <ShortName>Segment Information (Measurements Used by Management to Assess Performance of Segments) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SegmentInformationTables</ParentRole>
      <Position>109</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R110.htm</HtmlFileName>
      <LongName>0000110 - Disclosure - Segment Information (Net Sales by Contract Type) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails</Role>
      <ShortName>Segment Information (Net Sales by Contract Type) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SegmentInformationTables</ParentRole>
      <Position>110</Position>
    </Report>
    <Report instance="rock-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R111.htm</HtmlFileName>
      <LongName>0000111 - Disclosure - Segment Information (Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails</Role>
      <ShortName>Segment Information (Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gibraltar1.com/role/SegmentInformationTables</ParentRole>
      <Position>111</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 1 fact(s) appearing in ix:hidden were eligible for transformation: rock:IncomeTaxStatueOfLimitationsExpirationPeriod -  rock-20221231.htm 4</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-K" original="rock-20221231.htm">rock-20221231.htm</File>
    <File>ex41descriptionofregistran.htm</File>
    <File>q42022exhibit211.htm</File>
    <File>q42022exhibit231-eyconsent.htm</File>
    <File>q42022exhibit311.htm</File>
    <File>q42022exhibit312.htm</File>
    <File>q42022exhibit321.htm</File>
    <File>q42022exhibit322.htm</File>
    <File>rock-20221231.xsd</File>
    <File>rock-20221231_cal.xml</File>
    <File>rock-20221231_def.xml</File>
    <File>rock-20221231_lab.xml</File>
    <File>rock-20221231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>rock-20221231_g1.jpg</File>
    <File>rock-20221231_g2.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="1415">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="38">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>134
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "rock-20221231.htm": {
   "axisCustom": 1,
   "axisStandard": 34,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2022": 1415,
    "http://xbrl.sec.gov/dei/2022": 38
   },
   "contextCount": 368,
   "dts": {
    "calculationLink": {
     "local": [
      "rock-20221231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "rock-20221231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "rock-20221231.htm"
     ]
    },
    "labelLink": {
     "local": [
      "rock-20221231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "rock-20221231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "rock-20221231.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd",
      "https://xbrl.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd"
     ]
    }
   },
   "elementCount": 764,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2022": 3,
    "http://www.gibraltar1.com/20221231": 1,
    "http://xbrl.sec.gov/dei/2022": 4,
    "total": 8
   },
   "keyCustom": 55,
   "keyStandard": 436,
   "memberCustom": 44,
   "memberStandard": 49,
   "nsprefix": "rock",
   "nsuri": "http://www.gibraltar1.com/20221231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0000001 - Document - Cover Page",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://www.gibraltar1.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000010 - Disclosure - Summary of Significant Accounting Policies",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies",
     "shortName": "Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R100": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:SummaryOfValuationAllowanceTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i6ac4cd9abaf54a7b9341f1689083684e_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ValuationAllowancesAndReservesBalance",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000100 - Disclosure - Income Taxes (Summary of Valuation Allowance) (Details)",
     "menuCat": "Details",
     "order": "100",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails",
     "shortName": "Income Taxes (Summary of Valuation Allowance) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:SummaryOfValuationAllowanceTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i93ccdef323fe44f7af1e2d598642810c_I20191231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ValuationAllowancesAndReservesBalance",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R101": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxesPaidNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000101 - Disclosure - Income Taxes (Income Taxes Paid, Net of Tax Refunds) (Details)",
     "menuCat": "Details",
     "order": "101",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails",
     "shortName": "Income Taxes (Income Taxes Paid, Net of Tax Refunds) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxesPaidNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R102": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i2e934cf5324d4c9092293ca06e4e22b5_D20220101-20221231",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000102 - Disclosure - Earnings per Share (Narrative) (Details)",
     "menuCat": "Details",
     "order": "102",
     "role": "http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails",
     "shortName": "Earnings per Share (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i2e934cf5324d4c9092293ca06e4e22b5_D20220101-20221231",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R103": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeLossFromContinuingOperations",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000103 - Disclosure - Earnings per Share (Schedule of Computation of Basic and Diluted Earnings per Share) (Details)",
     "menuCat": "Details",
     "order": "103",
     "role": "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails",
     "shortName": "Earnings per Share (Schedule of Computation of Basic and Diluted Earnings per Share) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R104": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000104 - Disclosure - Leases - Narrative (Details)",
     "menuCat": "Details",
     "order": "104",
     "role": "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
     "shortName": "Leases - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i111a97b689604e879d56f14b17890abc_I20221231",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseRenewalTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R105": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:AssetsAndLiabilitiesLesseeTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000105 - Disclosure - Leases - Assets and Liabilities of Lessee (Details)",
     "menuCat": "Details",
     "order": "105",
     "role": "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails",
     "shortName": "Leases - Assets and Liabilities of Lessee (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R106": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000106 - Disclosure - Leases - Schedule of Lease Cost and Assumptions (Details)",
     "menuCat": "Details",
     "order": "106",
     "role": "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails",
     "shortName": "Leases - Schedule of Lease Cost and Assumptions (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R107": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000107 - Disclosure - Leases - Maturity of Lease Payments (Details)",
     "menuCat": "Details",
     "order": "107",
     "role": "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails",
     "shortName": "Leases - Maturity of Lease Payments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R108": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unitRef": "segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000108 - Disclosure - Segment Information (Narrative) (Details)",
     "menuCat": "Details",
     "order": "108",
     "role": "http://www.gibraltar1.com/role/SegmentInformationNarrativeDetails",
     "shortName": "Segment Information (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R109": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000109 - Disclosure - Segment Information (Measurements Used by Management to Assess Performance of Segments) (Details)",
     "menuCat": "Details",
     "order": "109",
     "role": "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
     "shortName": "Segment Information (Measurements Used by Management to Assess Performance of Segments) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "iac43c12b18c341d7b786b27eb503ed35_I20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:Assets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000011 - Disclosure - Revenue (Notes)",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://www.gibraltar1.com/role/RevenueNotes",
     "shortName": "Revenue (Notes)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R110": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000110 - Disclosure - Segment Information (Net Sales by Contract Type) (Details)",
     "menuCat": "Details",
     "order": "110",
     "role": "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails",
     "shortName": "Segment Information (Net Sales by Contract Type) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i7d5940f4d0994a899a9621ee6a085a48_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R111": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000111 - Disclosure - Segment Information (Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile) (Details)",
     "menuCat": "Details",
     "order": "111",
     "role": "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails",
     "shortName": "Segment Information (Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:NoncurrentAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000012 - Disclosure - Accounts Receivable",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://www.gibraltar1.com/role/AccountsReceivable",
     "shortName": "Accounts Receivable",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000013 - Disclosure - Inventories",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://www.gibraltar1.com/role/Inventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000014 - Disclosure - Property, Plant, and Equipment",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://www.gibraltar1.com/role/PropertyPlantandEquipment",
     "shortName": "Property, Plant, and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000015 - Disclosure - Acquisitions",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://www.gibraltar1.com/role/Acquisitions",
     "shortName": "Acquisitions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000016 - Disclosure - Goodwill and Related Intangible Assets",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssets",
     "shortName": "Goodwill and Related Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000017 - Disclosure - Accrued Expenses",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://www.gibraltar1.com/role/AccruedExpenses",
     "shortName": "Accrued Expenses",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000018 - Disclosure - Debt",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://www.gibraltar1.com/role/Debt",
     "shortName": "Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PostemploymentBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000019 - Disclosure - Pension and Other Postretirement Benefits",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefits",
     "shortName": "Pension and Other Postretirement Benefits",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PostemploymentBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:AuditorName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "false",
     "longName": "0000002 - Document - Audit Information",
     "menuCat": "Cover",
     "order": "2",
     "role": "http://www.gibraltar1.com/role/AuditInformation",
     "shortName": "Audit Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:AuditorName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000020 - Disclosure - Accumulated Other Comprehensive Income (Loss)",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLoss",
     "shortName": "Accumulated Other Comprehensive Income (Loss)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000021 - Disclosure - Equity-Based Compensation",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensation",
     "shortName": "Equity-Based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000022 - Disclosure - Fair Value Measurements",
     "menuCat": "Notes",
     "order": "22",
     "role": "http://www.gibraltar1.com/role/FairValueMeasurements",
     "shortName": "Fair Value Measurements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000023 - Disclosure - Discontinued Operations",
     "menuCat": "Notes",
     "order": "23",
     "role": "http://www.gibraltar1.com/role/DiscontinuedOperations",
     "shortName": "Discontinued Operations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000024 - Disclosure - Exit Activity Costs and Asset Impairments",
     "menuCat": "Notes",
     "order": "24",
     "role": "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairments",
     "shortName": "Exit Activity Costs and Asset Impairments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000025 - Disclosure - Income Taxes",
     "menuCat": "Notes",
     "order": "25",
     "role": "http://www.gibraltar1.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000026 - Disclosure - Earnings per Share",
     "menuCat": "Notes",
     "order": "26",
     "role": "http://www.gibraltar1.com/role/EarningsperShare",
     "shortName": "Earnings per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000027 - Disclosure - Leases",
     "menuCat": "Notes",
     "order": "27",
     "role": "http://www.gibraltar1.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000028 - Disclosure - Commitments and Contingencies",
     "menuCat": "Notes",
     "order": "28",
     "role": "http://www.gibraltar1.com/role/CommitmentsandContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000029 - Disclosure - Segment Information",
     "menuCat": "Notes",
     "order": "29",
     "role": "http://www.gibraltar1.com/role/SegmentInformation",
     "shortName": "Segment Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000003 - Statement - Consolidated Statements of Operations",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
     "shortName": "Consolidated Statements of Operations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CostOfRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000030 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "menuCat": "Policies",
     "order": "30",
     "role": "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000031 - Disclosure - Summary of Significant Accounting Policies (Tables)",
     "menuCat": "Tables",
     "order": "31",
     "role": "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables",
     "shortName": "Summary of Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000032 - Disclosure - Revenue (Tables)",
     "menuCat": "Tables",
     "order": "32",
     "role": "http://www.gibraltar1.com/role/RevenueTables",
     "shortName": "Revenue (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000033 - Disclosure - Accounts Receivable (Tables)",
     "menuCat": "Tables",
     "order": "33",
     "role": "http://www.gibraltar1.com/role/AccountsReceivableTables",
     "shortName": "Accounts Receivable (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000034 - Disclosure - Inventories (Tables)",
     "menuCat": "Tables",
     "order": "34",
     "role": "http://www.gibraltar1.com/role/InventoriesTables",
     "shortName": "Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000035 - Disclosure - Property, Plant, and Equipment (Tables)",
     "menuCat": "Tables",
     "order": "35",
     "role": "http://www.gibraltar1.com/role/PropertyPlantandEquipmentTables",
     "shortName": "Property, Plant, and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": null
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000036 - Disclosure - Acquisitions (Tables)",
     "menuCat": "Tables",
     "order": "36",
     "role": "http://www.gibraltar1.com/role/AcquisitionsTables",
     "shortName": "Acquisitions (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000037 - Disclosure - Goodwill and Related Intangible Assets (Tables)",
     "menuCat": "Tables",
     "order": "37",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables",
     "shortName": "Goodwill and Related Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000038 - Disclosure - Accrued Expenses (Tables)",
     "menuCat": "Tables",
     "order": "38",
     "role": "http://www.gibraltar1.com/role/AccruedExpensesTables",
     "shortName": "Accrued Expenses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000039 - Disclosure - Debt (Tables)",
     "menuCat": "Tables",
     "order": "39",
     "role": "http://www.gibraltar1.com/role/DebtTables",
     "shortName": "Debt (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000004 - Statement - Consolidated Statements of Comprehensive Income",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome",
     "shortName": "Consolidated Statements of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000040 - Disclosure - Pension and Other Postretirement Benefits (Tables)",
     "menuCat": "Tables",
     "order": "40",
     "role": "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables",
     "shortName": "Pension and Other Postretirement Benefits (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000041 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Tables)",
     "menuCat": "Tables",
     "order": "41",
     "role": "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossTables",
     "shortName": "Accumulated Other Comprehensive Income (Loss) (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000042 - Disclosure - Equity-Based Compensation (Tables)",
     "menuCat": "Tables",
     "order": "42",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationTables",
     "shortName": "Equity-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000043 - Disclosure - Discontinued Operations (Tables)",
     "menuCat": "Tables",
     "order": "43",
     "role": "http://www.gibraltar1.com/role/DiscontinuedOperationsTables",
     "shortName": "Discontinued Operations (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000044 - Disclosure - Exit Activity Costs and Asset Impairments (Tables)",
     "menuCat": "Tables",
     "order": "44",
     "role": "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables",
     "shortName": "Exit Activity Costs and Asset Impairments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000045 - Disclosure - Income Taxes (Tables)",
     "menuCat": "Tables",
     "order": "45",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000046 - Disclosure - Earnings per Share (Tables)",
     "menuCat": "Tables",
     "order": "46",
     "role": "http://www.gibraltar1.com/role/EarningsperShareTables",
     "shortName": "Earnings per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "rock:AssetsAndLiabilitiesLesseeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000047 - Disclosure - Leases (Tables)",
     "menuCat": "Tables",
     "order": "47",
     "role": "http://www.gibraltar1.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "rock:AssetsAndLiabilitiesLesseeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000048 - Disclosure - Segment Information (Tables)",
     "menuCat": "Tables",
     "order": "48",
     "role": "http://www.gibraltar1.com/role/SegmentInformationTables",
     "shortName": "Segment Information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ic293a1eb0344401e83175208f94528cd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000049 - Disclosure - Summary of Significant Accounting Policies (Summary of Activity Recorded within the Allowance for Doubtful Accounts) (Details)",
     "menuCat": "Details",
     "order": "49",
     "role": "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails",
     "shortName": "Summary of Significant Accounting Policies (Summary of Activity Recorded within the Allowance for Doubtful Accounts) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ProvisionForDoubtfulAccounts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000005 - Statement - Consolidated Balance Sheets",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unitRef": "segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000050 - Disclosure - Summary of Significant Accounting Policies (Narrative) (Details)",
     "menuCat": "Details",
     "order": "50",
     "role": "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails",
     "shortName": "Summary of Significant Accounting Policies (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:AdvertisingExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000051 - Disclosure - Summary of Significant Accounting Policies (Summary of Interest Capitalized and Depreciation Expense) (Details)",
     "menuCat": "Details",
     "order": "51",
     "role": "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails",
     "shortName": "Summary of Significant Accounting Policies (Summary of Interest Capitalized and Depreciation Expense) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract",
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000052 - Disclosure - Revenue - Narrative (Details)",
     "menuCat": "Details",
     "order": "52",
     "role": "http://www.gibraltar1.com/role/RevenueNarrativeDetails",
     "shortName": "Revenue - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract",
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "rock:ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetNet",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000053 - Disclosure - Revenue - Contract Assets and Liabilities (Details)",
     "menuCat": "Details",
     "order": "53",
     "role": "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
     "shortName": "Revenue - Contract Assets and Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000054 - Disclosure - Accounts Receivable (Details)",
     "menuCat": "Details",
     "order": "54",
     "role": "http://www.gibraltar1.com/role/AccountsReceivableDetails",
     "shortName": "Accounts Receivable (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000055 - Disclosure - Inventories (Schedule of Inventories) (Details)",
     "menuCat": "Details",
     "order": "55",
     "role": "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails",
     "shortName": "Inventories (Schedule of Inventories) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:SummaryOfSlowMovingInventoryActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ic293a1eb0344401e83175208f94528cd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryValuationReserves",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000056 - Disclosure - Inventories (Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory) (Details)",
     "menuCat": "Details",
     "order": "56",
     "role": "http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails",
     "shortName": "Inventories (Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:SummaryOfSlowMovingInventoryActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i04984d64226f4fdf86917c2cc9b4a1d8_I20191231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:InventoryValuationReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LandAndLandImprovements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000057 - Disclosure - Property, Plant, and Equipment (Details)",
     "menuCat": "Details",
     "order": "57",
     "role": "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails",
     "shortName": "Property, Plant, and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LandAndLandImprovements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000058 - Disclosure - Acquisitions (Narrative) (Details)",
     "menuCat": "Details",
     "order": "58",
     "role": "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
     "shortName": "Acquisitions (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:NumberOfBusinessesAcquired",
      "reportCount": 1,
      "unique": true,
      "unitRef": "business",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000059 - Disclosure - Acquisitions (Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed) (Details)",
     "menuCat": "Details",
     "order": "59",
     "role": "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails",
     "shortName": "Acquisitions (Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ia26bb7d828b149e89a0de2fd955f82b8_I20220822",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000006 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i23c6169a4f084952b8b81fb79a422cb7_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000060 - Disclosure - Acquisitions (Schedule of Acquired Intangible Assets) (Details)",
     "menuCat": "Details",
     "order": "60",
     "role": "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
     "shortName": "Acquisitions (Schedule of Acquired Intangible Assets) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i23c6169a4f084952b8b81fb79a422cb7_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:ScheduleofBusinessCombinationCostsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000061 - Disclosure - Acquisitions (Acquisition Related Costs) (Details)",
     "menuCat": "Details",
     "order": "61",
     "role": "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails",
     "shortName": "Acquisitions (Acquisition Related Costs) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:ScheduleofBusinessCombinationCostsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ic293a1eb0344401e83175208f94528cd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000062 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Changes in Carrying Amount of Goodwill) (Details)",
     "menuCat": "Details",
     "order": "62",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails",
     "shortName": "Goodwill and Related Intangible Assets (Schedule of Changes in Carrying Amount of Goodwill) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:GoodwillAcquiredDuringPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillImpairedAccumulatedImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000063 - Disclosure - Goodwill and Related Intangible Assets (Narrative) (Details)",
     "menuCat": "Details",
     "order": "63",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails",
     "shortName": "Goodwill and Related Intangible Assets (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillImpairedAccumulatedImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000064 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Acquired Intangible Assets) (Details)",
     "menuCat": "Details",
     "order": "64",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails",
     "shortName": "Goodwill and Related Intangible Assets (Schedule of Acquired Intangible Assets) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifb286abff79f433bb164050d22b67bf2_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000065 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Impairment Charges) (Details)",
     "menuCat": "Details",
     "order": "65",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails",
     "shortName": "Goodwill and Related Intangible Assets (Schedule of Impairment Charges) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000066 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Amortization Expense) (Details)",
     "menuCat": "Details",
     "order": "66",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails",
     "shortName": "Goodwill and Related Intangible Assets (Schedule of Amortization Expense) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000067 - Disclosure - Goodwill and Related Intangible Assets (Schedule of Future Amortization Expense) (Details)",
     "menuCat": "Details",
     "order": "67",
     "role": "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails",
     "shortName": "Goodwill and Related Intangible Assets (Schedule of Future Amortization Expense) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000068 - Disclosure - Accrued Expenses (Details)",
     "menuCat": "Details",
     "order": "68",
     "role": "http://www.gibraltar1.com/role/AccruedExpensesDetails",
     "shortName": "Accrued Expenses (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredFinanceCostsNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000069 - Disclosure - Debt (Schedule of Long-term Debt) (Details)",
     "menuCat": "Details",
     "order": "69",
     "role": "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails",
     "shortName": "Debt (Schedule of Long-term Debt) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredFinanceCostsNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000007 - Statement - Consolidated Statements of Cash Flows",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:AmortizationOfFinancingCostsAndDiscounts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000070 - Disclosure - Debt (Narrative) (Details)",
     "menuCat": "Details",
     "order": "70",
     "role": "http://www.gibraltar1.com/role/DebtNarrativeDetails",
     "shortName": "Debt (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i497e4dc4ca374e6f869a97d6180e3e4d_D20221208-20221208",
      "decimals": "4",
      "lang": "en-US",
      "name": "us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InterestIncomeExpenseNet",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000071 - Disclosure - Debt (Schedule of Cash Paid for Interest) (Details)",
     "menuCat": "Details",
     "order": "71",
     "role": "http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails",
     "shortName": "Debt (Schedule of Cash Paid for Interest) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:ScheduleOfInterestCashPaymentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:InterestIncomeOther",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PostemploymentBenefitsPeriodExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000072 - Disclosure - Pension and Other Postretirement Benefits (Schedule of Total Expense for All Retirement Plans) (Details)",
     "menuCat": "Details",
     "order": "72",
     "role": "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails",
     "shortName": "Pension and Other Postretirement Benefits (Schedule of Total Expense for All Retirement Plans) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PostemploymentBenefitsPeriodExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfNetFundedStatusTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanPlanAmendments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000073 - Disclosure - Pension and Other Postretirement Benefits (Changes in the Accumulated Postretirement Benefit Obligation) (Details)",
     "menuCat": "Details",
     "order": "73",
     "role": "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
     "shortName": "Pension and Other Postretirement Benefits (Changes in the Accumulated Postretirement Benefit Obligation) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfNetFundedStatusTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanPlanAmendments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i2c8c739d96c6432f9839cca666e5b5e5_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000074 - Disclosure - Pension and Other Postretirement Benefits (Amounts Recognized in the Consolidated Financial Statements) (Details)",
     "menuCat": "Details",
     "order": "74",
     "role": "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails",
     "shortName": "Pension and Other Postretirement Benefits (Amounts Recognized in the Consolidated Financial Statements) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i2c8c739d96c6432f9839cca666e5b5e5_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000075 - Disclosure - Pension and Other Postretirement Benefits (Components of Net Periodic Postretirement Benefit Cost) (Details)",
     "menuCat": "Details",
     "order": "75",
     "role": "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails",
     "shortName": "Pension and Other Postretirement Benefits (Components of Net Periodic Postretirement Benefit Cost) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i2c8c739d96c6432f9839cca666e5b5e5_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000076 - Disclosure - Pension and Other Postretirement Benefits (Expected Benefit Payments from the Plan) (Details)",
     "menuCat": "Details",
     "order": "76",
     "role": "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails",
     "shortName": "Pension and Other Postretirement Benefits (Expected Benefit Payments from the Plan) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i2c8c739d96c6432f9839cca666e5b5e5_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ic293a1eb0344401e83175208f94528cd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000077 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Details)",
     "menuCat": "Details",
     "order": "77",
     "role": "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails",
     "shortName": "Accumulated Other Comprehensive Income (Loss) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000078 - Disclosure - Equity-Based Compensation (Narrative) (Details)",
     "menuCat": "Details",
     "order": "78",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
     "shortName": "Equity-Based Compensation (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "rock:StockCompensationExpenseRecognizedUnderTerminatedPlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000079 - Disclosure - Equity-Based Compensation (Summary of Compensation Expense Connection with Awards) (Details)",
     "menuCat": "Details",
     "order": "79",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails",
     "shortName": "Equity-Based Compensation (Summary of Compensation Expense Connection with Awards) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "rock:StockCompensationExpenseRecognizedUnderTerminatedPlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i1f2f9cce6699404a833413104919ce4e_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000008 - Statement - Consolidated Statements of Stockholders' Equity",
     "menuCat": "Statements",
     "order": "8",
     "role": "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
     "shortName": "Consolidated Statements of Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i1f2f9cce6699404a833413104919ce4e_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ia2fe82dd31814ebdb96d3b71a702bd0f_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000080 - Disclosure - Equity-Based Compensation (Schedule of Number of Awards and Weighted Average Grant Date Fair Value) (Details)",
     "menuCat": "Details",
     "order": "80",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
     "shortName": "Equity-Based Compensation (Schedule of Number of Awards and Weighted Average Grant Date Fair Value) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib9cc28d5b75e49d5b3ae72b6c80a4ee8_D20220101-20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000081 - Disclosure - Equity-Based Compensation (Summary of Ranges of Outstanding and Exercisable Options) (Details)",
     "menuCat": "Details",
     "order": "81",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails",
     "shortName": "Equity-Based Compensation (Summary of Ranges of Outstanding and Exercisable Options) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i5fb5288d39974650b9d1670282fee62a_D20220101-20221231",
      "decimals": "2",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ic293a1eb0344401e83175208f94528cd_I20211231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000082 - Disclosure - Equity-Based Compensation (Summary of Stock Option Transactions) (Details)",
     "menuCat": "Details",
     "order": "82",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails",
     "shortName": "Equity-Based Compensation (Summary of Stock Option Transactions) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i2e4c420ff29047059f909480eb1a2ec8_D20210101-20211231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000083 - Disclosure - Equity-Based Compensation (Summary of Information about Restricted Stock Units and Weighted Average Grant Date Fair Value) (Details)",
     "menuCat": "Details",
     "order": "83",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails",
     "shortName": "Equity-Based Compensation (Summary of Information about Restricted Stock Units and Weighted Average Grant Date Fair Value) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "rock:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000084 - Disclosure - Equity-Based Compensation (Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested) (Details)",
     "menuCat": "Details",
     "order": "84",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
     "shortName": "Equity-Based Compensation (Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:CashPaidToSettleLiabilityAwardsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i17939686689243ebbbe2ee842d9ef194_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000085 - Disclosure - Equity-Based Compensation (Cash Paid to Settle Liability Awards) (Details)",
     "menuCat": "Details",
     "order": "85",
     "role": "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
     "shortName": "Equity-Based Compensation (Cash Paid to Settle Liability Awards) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "rock:CashPaidToSettleLiabilityAwardsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i17939686689243ebbbe2ee842d9ef194_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000086 - Disclosure - Fair Value Measurements (Narrative) (Details)",
     "menuCat": "Details",
     "order": "86",
     "role": "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails",
     "shortName": "Fair Value Measurements (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i5d1b7da973f44c23ba3652f9d13b2042_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000087 - Disclosure - Discontinued Operations (Schedule of Disposal Group) (Details)",
     "menuCat": "Details",
     "order": "87",
     "role": "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails",
     "shortName": "Discontinued Operations (Schedule of Disposal Group) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i5d1b7da973f44c23ba3652f9d13b2042_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000088 - Disclosure - Discontinued Operations (Net Sales and Operating Loss for Held for Sale Operations) (Details)",
     "menuCat": "Details",
     "order": "88",
     "role": "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
     "shortName": "Discontinued Operations (Net Sales and Operating Loss for Held for Sale Operations) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ie3a8783cc39f4b1a8ed32ef63b3f36e5_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R89": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GainLossOnSaleOfBusiness",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000089 - Disclosure - Discontinued Operations (Narrative) (Details)",
     "menuCat": "Details",
     "order": "89",
     "role": "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
     "shortName": "Discontinued Operations (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ic9662d503bf04b7a9318b1d725f12705_I20210223",
      "decimals": "-6",
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:OtherComprehensiveIncomeLossTax",
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000009 - Statement - Consolidated Statements of Stockholders' Equity (Parenthetical)",
     "menuCat": "Statements",
     "order": "9",
     "role": "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical",
     "shortName": "Consolidated Statements of Stockholders' Equity (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:OtherComprehensiveIncomeLossTax",
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "rock:OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R90": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GainLossOnSaleOfBusiness",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000090 - Disclosure - Discontinued Operations (Components of Income from Discontinued Operations before Taxes, Including the Interest Allocated to Discontinued Operations) (Details)",
     "menuCat": "Details",
     "order": "90",
     "role": "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
     "shortName": "Discontinued Operations (Components of Income from Discontinued Operations before Taxes, Including the Interest Allocated to Discontinued Operations) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i90f3b94c1bee4639bf42cc08c9b624da_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R91": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed",
      "reportCount": 1,
      "unique": true,
      "unitRef": "facility",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000091 - Disclosure - Exit Activity Costs and Asset Impairments (Narrative) (Details)",
     "menuCat": "Details",
     "order": "91",
     "role": "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails",
     "shortName": "Exit Activity Costs and Asset Impairments (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "rock:RestructuringandRelatedCostNumberofFacilitiestobeClosed",
      "reportCount": 1,
      "unique": true,
      "unitRef": "facility",
      "xsiNil": "false"
     }
    },
    "R92": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessExitCosts1",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000092 - Disclosure - Exit Activity Costs and Asset Impairments (Schedule Of Asset Impairment Charges Related To Restructuring Activities) (Details)",
     "menuCat": "Details",
     "order": "92",
     "role": "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
     "shortName": "Exit Activity Costs and Asset Impairments (Schedule Of Asset Impairment Charges Related To Restructuring Activities) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:RestructuringSettlementAndImpairmentProvisions",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R93": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringCharges",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000093 - Disclosure - Exit Activity Costs and Asset Impairments (Summary Of Exit Activity Costs And Asset Impairments Recorded in the Consolidated Statements of Operations) (Details)",
     "menuCat": "Details",
     "order": "93",
     "role": "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails",
     "shortName": "Exit Activity Costs and Asset Impairments (Summary Of Exit Activity Costs And Asset Impairments Recorded in the Consolidated Statements of Operations) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i45c7964e33af433eb4a807a5353dd710_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:RestructuringCharges",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R94": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ic293a1eb0344401e83175208f94528cd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringReserve",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000094 - Disclosure - Exit Activity Costs and Asset Impairments (Reconciles Of Liability For Exit Activity Costs Relating To Facility Consolidation Efforts) (Details)",
     "menuCat": "Details",
     "order": "94",
     "role": "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails",
     "shortName": "Exit Activity Costs and Asset Impairments (Reconciles Of Liability For Exit Activity Costs Relating To Facility Consolidation Efforts) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:PaymentsForRestructuring",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R95": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000095 - Disclosure - Income Taxes (Components of Income (Loss) before Taxes from Continuing Operations) (Details)",
     "menuCat": "Details",
     "order": "95",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails",
     "shortName": "Income Taxes (Components of Income (Loss) before Taxes from Continuing Operations) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R96": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000096 - Disclosure - Income Taxes (Benefit of) Provision for Income Taxes) (Details)",
     "menuCat": "Details",
     "order": "96",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails",
     "shortName": "Income Taxes (Benefit of) Provision for Income Taxes) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "i600cc11fd24045f59837bb977179beaa_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R97": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000097 - Disclosure - Income Taxes (Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate) (Details)",
     "menuCat": "Details",
     "order": "97",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails",
     "shortName": "Income Taxes (Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R98": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000098 - Disclosure - Income Taxes (Deferred Tax Liabilities (Assets)) (Details)",
     "menuCat": "Details",
     "order": "98",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails",
     "shortName": "Income Taxes (Deferred Tax Liabilities (Assets)) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R99": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ifaa13beea0624c52b316070ce0f455af_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000099 - Disclosure - Income Taxes (Narrative) (Details)",
     "menuCat": "Details",
     "order": "99",
     "role": "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails",
     "shortName": "Income Taxes (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "rock-20221231.htm",
      "contextRef": "ib27155f7aba943d79ec120faa76c72cc_I20221231",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 98,
   "tag": {
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r804",
      "r805",
      "r806"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID",
        "terseLabel": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AuditInformation"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r804",
      "r805",
      "r806"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location",
        "terseLabel": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AuditInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r804",
      "r805",
      "r806"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name",
        "terseLabel": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AuditInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]",
        "terseLabel": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "xbrltype": "stringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date",
        "terseLabel": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r804",
      "r805",
      "r806"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report",
        "terseLabel": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus",
        "terseLabel": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r807"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r802"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Documents incorporated by reference.",
        "label": "Documents Incorporated by Reference [Text Block]",
        "terseLabel": "Documents Incorporated by Reference"
       }
      }
     },
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "textBlockItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two",
        "terseLabel": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key",
        "terseLabel": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding",
        "terseLabel": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code",
        "terseLabel": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r808"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float",
        "terseLabel": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number",
        "terseLabel": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers",
        "terseLabel": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r809"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer",
        "terseLabel": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r804",
      "r805",
      "r806"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag",
        "terseLabel": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r800"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r803"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol",
        "terseLabel": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "rock_A2015PlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2015 Plan [Member]",
        "label": "2015 Plan [Member]",
        "terseLabel": "2015 Plan"
       }
      }
     },
     "localname": "A2015PlanMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_A2017Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2017 [Member]",
        "label": "2017 [Member]",
        "terseLabel": "2017"
       }
      }
     },
     "localname": "A2017Member",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_A2018Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2018 [Member]",
        "label": "2018 [Member]",
        "terseLabel": "2018"
       }
      }
     },
     "localname": "A2018Member",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_A2018PlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2018 Plan [Member]",
        "label": "2018 Plan [Member]",
        "terseLabel": "2018 Plan"
       }
      }
     },
     "localname": "A2018PlanMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_A2019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2019 [Member]",
        "label": "2019 [Member]",
        "terseLabel": "2019"
       }
      }
     },
     "localname": "A2019Member",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_A2019SeniorCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2019 Senior Credit Agreement [Member]",
        "label": "2019 Senior Credit Agreement [Member]",
        "terseLabel": "2019 Senior Credit Agreement"
       }
      }
     },
     "localname": "A2019SeniorCreditAgreementMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_A2022SeniorCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2022 Senior Credit Agreement",
        "label": "2022 Senior Credit Agreement [Member]",
        "terseLabel": "2022 Senior Credit Agreement"
       }
      }
     },
     "localname": "A2022SeniorCreditAgreementMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_A401kPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "401(k) Plan [Member]",
        "label": "401(k) Plan [Member]",
        "terseLabel": "401(k) plan"
       }
      }
     },
     "localname": "A401kPlanMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_AccruedCustomerRebatesCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued customer rebates, current",
        "label": "Accrued Customer Rebates, Current",
        "verboseLabel": "Compensation"
       }
      }
     },
     "localname": "AccruedCustomerRebatesCurrent",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_AccruedEquityBasedCompensation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued Equity Based Compensation",
        "label": "Accrued Equity Based Compensation",
        "terseLabel": "Accrued equity based compensation"
       }
      }
     },
     "localname": "AccruedEquityBasedCompensation",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_AccruedExpensesCurrentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued Expenses, Current [Member]",
        "label": "Accrued Expenses, Current [Member]",
        "terseLabel": "Accrued Expenses, Current"
       }
      }
     },
     "localname": "AccruedExpensesCurrentMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_AccruedSharebasedCompensationCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 8.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued Share-based Compensation, Current",
        "label": "Accrued Share-based Compensation, Current",
        "terseLabel": "Current portion of MSPP liabilities"
       }
      }
     },
     "localname": "AccruedSharebasedCompensationCurrent",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_AccumulatedOtherComprehensiveIncomeLossTax": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated Other Comprehensive Income (Loss), Tax",
        "label": "Accumulated Other Comprehensive Income (Loss), Tax",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossTax",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_AcquiredIntangibleAssetsTotal": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Acquired Intangible Assets, Total.",
        "label": "Acquired Intangible Assets, Total",
        "terseLabel": "Total acquired intangible assets, Gross Carrying Amount"
       }
      }
     },
     "localname": "AcquiredIntangibleAssetsTotal",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_AgtechMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agtech",
        "label": "Agtech [Member]",
        "terseLabel": "Agtech"
       }
      }
     },
     "localname": "AgtechMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ApartmentTourApplicationBusinessMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Apartment Tour Application Business",
        "label": "Apartment Tour Application Business [Member]",
        "terseLabel": "Apartment Tour Application Business"
       }
      }
     },
     "localname": "ApartmentTourApplicationBusinessMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ApplicableRatePeriod1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Applicable Rate Period 1",
        "label": "Applicable Rate Period 1 [Member]",
        "terseLabel": "Applicable rate through March 31, 2023"
       }
      }
     },
     "localname": "ApplicableRatePeriod1Member",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ApplicableRatePeriod2Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Applicable Rate Period 2",
        "label": "Applicable Rate Period 2 [Member]",
        "terseLabel": "Applicable rate after April 1, 2023"
       }
      }
     },
     "localname": "ApplicableRatePeriod2Member",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ArchitecturalMailboxesLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Architectural Mailboxes LLC",
        "label": "Architectural Mailboxes LLC [Member]",
        "terseLabel": "Architectural Mailboxes LLC"
       }
      }
     },
     "localname": "ArchitecturalMailboxesLLCMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_AssetsAndLiabilitiesLesseeTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Assets And Liabilities, Lessee [Table Text Block]",
        "label": "Assets And Liabilities, Lessee [Table Text Block]",
        "terseLabel": "Assets And Liabilities, Lessee"
       }
      }
     },
     "localname": "AssetsAndLiabilitiesLesseeTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_AuditInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Audit Information [Abstract]",
        "label": "Audit Information [Abstract]"
       }
      }
     },
     "localname": "AuditInformationAbstract",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "xbrltype": "stringItemType"
    },
    "rock_BacklogMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Backlog",
        "label": "Backlog [Member]",
        "terseLabel": "Backlog"
       }
      }
     },
     "localname": "BacklogMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_BillingsinExcessofCostMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Billings in Excess of Cost [Member]",
        "label": "Billings in Excess of Cost [Member]",
        "terseLabel": "Billings in excess of cost"
       }
      }
     },
     "localname": "BillingsinExcessofCostMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Working Capital",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Working Capital",
        "terseLabel": "Working capital"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedWorkingCapital",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_CapitalLossCarryfoward": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capital Loss Carryfoward",
        "label": "Capital Loss Carryfoward",
        "terseLabel": "Capital loss carryforward"
       }
      }
     },
     "localname": "CapitalLossCarryfoward",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_CapitalLossCarryfowardAmendedReturns": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capital Loss Carryfoward, Amended Returns",
        "label": "Capital Loss Carryfoward, Amended Returns",
        "terseLabel": "Amended returns"
       }
      }
     },
     "localname": "CapitalLossCarryfowardAmendedReturns",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_CashPaidToSettleLiabilityAwardsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash Paid To Settle Liability Awards [Table Text Block]",
        "label": "Cash Paid To Settle Liability Awards [Table Text Block]",
        "terseLabel": "Cash Paid to Settle Liability Awards"
       }
      }
     },
     "localname": "CashPaidToSettleLiabilityAwardsTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract with Customer, Asset, Obtained through Incremental Cost of Obtaining Contract",
        "label": "Contract with Customer, Asset, Obtained through Incremental Cost of Obtaining Contract",
        "terseLabel": "Asset recognized related to incremental costs of obtaining a contract"
       }
      }
     },
     "localname": "ContractWithCustomerAssetObtainedThroughIncrementalCostOfObtainingContract",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_ContractWithCustomerContractPaymentTerms": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract With Customer, Contract Payment Terms",
        "label": "Contract With Customer, Contract Payment Terms",
        "terseLabel": "Contract payment terms"
       }
      }
     },
     "localname": "ContractWithCustomerContractPaymentTerms",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "rock_ContractsReceivableGrossCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/AccountsReceivableDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contracts Receivable, Gross, Current",
        "label": "Contracts Receivable, Gross, Current",
        "totalLabel": "Total contract receivables"
       }
      }
     },
     "localname": "ContractsReceivableGrossCurrent",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_DebtInstrumentApplicableRatePeriodAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Applicable Rate Period",
        "label": "Debt Instrument, Applicable Rate Period [Axis]",
        "terseLabel": "Debt Instrument, Applicable Rate Period [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentApplicableRatePeriodAxis",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "rock_DebtInstrumentApplicableRatePeriodDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Applicable Rate Period [Domain]",
        "label": "Debt Instrument, Applicable Rate Period [Domain]",
        "terseLabel": "Debt Instrument, Applicable Rate Period [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentApplicableRatePeriodDomain",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_DebtInstrumentNumberOfDebtCovenants": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Number of Debt Covenants",
        "label": "Debt Instrument, Number of Debt Covenants",
        "terseLabel": "Number of debt covenants"
       }
      }
     },
     "localname": "DebtInstrumentNumberOfDebtCovenants",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "rock_DeferredStockUnitsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Stock Units [Member]",
        "label": "Deferred Stock Units [Member]",
        "terseLabel": "Deferred Stock Units"
       }
      }
     },
     "localname": "DeferredStockUnitsMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_DeferredTaxAssetsCapitalLossCarryfowards": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Assets, Capital Loss Carryfowards",
        "label": "Deferred Tax Assets, Capital Loss Carryfowards",
        "terseLabel": "Deferred tax assets, capital loss carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsCapitalLossCarryfowards",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Assets, Temporary Difference, Future Sale Of Business",
        "label": "Deferred Tax Assets, Temporary Difference, Future Sale Of Business",
        "negatedTerseLabel": "Assets held for sale"
       }
      }
     },
     "localname": "DeferredTaxAssetsTemporaryDifferenceFutureSaleOfBusiness",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs After Age 65",
        "label": "Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs After Age 65",
        "terseLabel": "Annual rate of increase in the per capita cost of: Medical costs after age 65"
       }
      }
     },
     "localname": "DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsAfterAge65",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs Before Age 65",
        "label": "Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Medical Costs Before Age 65",
        "terseLabel": "Annual rate of increase in the per capita cost of: Medical costs before age 65"
       }
      }
     },
     "localname": "DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearMedicalCostsBeforeAge65",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "rock_DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Prescription Drug Costs",
        "label": "Defined Benefit Plan, Health Care Cost Trend Rate Assumed for Next Fiscal Year, Prescription Drug Costs",
        "terseLabel": "Annual rate of increase in the per capita cost of: Prescription drug costs"
       }
      }
     },
     "localname": "DefinedBenefitPlanHealthCareCostTrendRateAssumedforNextFiscalYearPrescriptionDrugCosts",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "rock_DeltaSeparationsLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Delta Separations, LLC",
        "label": "Delta Separations, LLC [Member]",
        "terseLabel": "Delta Separations, LLC"
       }
      }
     },
     "localname": "DeltaSeparationsLLCMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disposal Group, Including Discontinued Operation, Operating Lease Liability, Noncurrent",
        "label": "Disposal Group, Including Discontinued Operation, Operating Lease Liability, Noncurrent",
        "terseLabel": "Non-current operating lease liabilities"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disposal Group, Including Discontinued Operation, Operating Lease, Right-of-Use Asset",
        "label": "Disposal Group, Including Discontinued Operation, Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease asset"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAsset",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_DisposalGroupIncludingDiscontinuedOperationValuationAllowance": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disposal Group, Including Discontinued Operation, Valuation Allowance",
        "label": "Disposal Group, Including Discontinued Operation, Valuation Allowance",
        "negatedLabel": "Valuation allowance",
        "terseLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationValuationAllowance",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Executive Compensation, Amount",
        "label": "Effective Income Tax Rate Reconciliation, Executive Compensation, Amount",
        "terseLabel": "Executive compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationExecutiveCompensationAmount",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Executive Compensation, Percent",
        "label": "Effective Income Tax Rate Reconciliation, Executive Compensation, Percent",
        "terseLabel": "Executive compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationExecutiveCompensationPercent",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "rock_ExercisePriceRangeOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise Price Range One [Member]",
        "label": "Exercise Price Range One [Member]",
        "terseLabel": "$39.55"
       }
      }
     },
     "localname": "ExercisePriceRangeOneMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_HomeImprovementRetailCompanyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Home Improvement Retail Company [Member]",
        "label": "Home Improvement Retail Company [Member]",
        "terseLabel": "Home Improvement Retail Company"
       }
      }
     },
     "localname": "HomeImprovementRetailCompanyMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_IncomeTaxStatueOfLimitationsExpirationPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Tax Statue Of Limitations Expiration Period",
        "label": "Income Tax Statue Of Limitations Expiration Period",
        "terseLabel": "Statute of limitations expiration period, in years"
       }
      }
     },
     "localname": "IncomeTaxStatueOfLimitationsExpirationPeriod",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "rock_IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income taxes paid and net of tax refunds [Table Text Block].",
        "label": "Income Taxes Paid And Net Of Tax Refunds [Table Text Block]",
        "terseLabel": "Income Taxes Paid, Net of Tax Refunds"
       }
      }
     },
     "localname": "IncomeTaxesPaidAndNetOfTaxRefundsTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_IndefiniteLivedAccumulatedAmortization": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indefinite-lived accumulated amortization.",
        "label": "Indefinite Lived Accumulated Amortization",
        "terseLabel": "Accumulated Amortization, Indefinite-lived intangible assets"
       }
      }
     },
     "localname": "IndefiniteLivedAccumulatedAmortization",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_IndustrialBusinessSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Industrial Business Segment",
        "label": "Industrial Business Segment [Member]",
        "terseLabel": "Industrial Business Segment"
       }
      }
     },
     "localname": "IndustrialBusinessSegmentMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_InfrastructureMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Infrastructure",
        "label": "Infrastructure [Member]",
        "terseLabel": "Infrastructure"
       }
      }
     },
     "localname": "InfrastructureMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_InventoryRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory [Roll Forward]",
        "label": "Inventory [Roll Forward]",
        "terseLabel": "Inventory [Roll Forward]"
       }
      }
     },
     "localname": "InventoryRollForward",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "rock_InventoryValuationExcessObsoleteAndSlowMovingInventory": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory valuation excess, obsolete, and slow-moving inventory",
        "label": "Inventory Valuation, Excess Obsolete And Slow Moving Inventory",
        "terseLabel": "Excess, obsolete and slow moving inventory expense"
       }
      }
     },
     "localname": "InventoryValuationExcessObsoleteAndSlowMovingInventory",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_InventoryValuationScrappedInventoryAndOtherAdjustments": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory valuation scrapped inventory and other adjustments.",
        "label": "Inventory Valuation Scrapped Inventory And Other Adjustments",
        "negatedLabel": "Scrapped inventory and other adjustments"
       }
      }
     },
     "localname": "InventoryValuationScrappedInventoryAndOtherAdjustments",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_ManagementStockPurchasePlanCompensationExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Management Stock Purchase Plan, Compensation Expense",
        "label": "Management Stock Purchase Plan, Compensation Expense",
        "terseLabel": "MSPP (recovery) expense (in thousands)"
       }
      }
     },
     "localname": "ManagementStockPurchasePlanCompensationExpense",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_ManagementStockPurchasePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Management stock purchase plan [Member].",
        "label": "Management Stock Purchase Plan [Member]",
        "terseLabel": "Management Stock Purchase Plan",
        "verboseLabel": "MSPP"
       }
      }
     },
     "localname": "ManagementStockPurchasePlanMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_MarketPriceOfCommonStockPerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Market price of common stock per share.",
        "label": "Market Price Of Common Stock Per Share",
        "terseLabel": "Market price of common stock, per share"
       }
      }
     },
     "localname": "MarketPriceOfCommonStockPerShare",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "rock_NetPeriodicPostRetirementCostTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net Periodic Post Retirement Cost [Table].",
        "label": "Net Periodic Post Retirement Cost [Table]",
        "terseLabel": "Net Periodic Post Retirement Cost [Table]"
       }
      }
     },
     "localname": "NetPeriodicPostRetirementCostTable",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "rock_NonCurrentLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non Current Liabilities [Member]",
        "label": "Non Current Liabilities [Member]",
        "terseLabel": "Non Current Liabilities"
       }
      }
     },
     "localname": "NonCurrentLiabilitiesMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_NonEmployeeDirectorsPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non-Employee Directors Plan [Member]",
        "label": "Non-Employee Directors Plan [Member]",
        "terseLabel": "Non-Employee Directors Plan"
       }
      }
     },
     "localname": "NonEmployeeDirectorsPlanMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_NoncashInterestAdjustment": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Noncash Interest Adjustment",
        "label": "Noncash Interest Adjustment",
        "terseLabel": "Other non-cash adjustments"
       }
      }
     },
     "localname": "NoncashInterestAdjustment",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Comprehensive Income Minimum Pension Liability Net Adjustment Tax 1",
        "label": "Other Comprehensive Income Minimum Pension Liability Net Adjustment Tax 1",
        "negatedTerseLabel": "Minimum pension and post retirement benefit plan adjustments, net of taxes"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeMinimumPensionLiabilityNetAdjustmentTax1",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_OtherPostretirementBenefitsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Postretirement Benefits [Abstract].",
        "label": "Other Postretirement Benefits [Abstract]",
        "terseLabel": "Other Postretirement Benefits [Abstract]"
       }
      }
     },
     "localname": "OtherPostretirementBenefitsAbstract",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "xbrltype": "stringItemType"
    },
    "rock_PaymentsToAcquirePropertyPlantAndEquipmentNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payments to Acquire Property, Plant, and Equipment, Net",
        "label": "Payments to Acquire Property, Plant, and Equipment, Net",
        "negatedLabel": "Purchases of property, plant, and equipment, net"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipmentNet",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_PerformanceSharesMarketConditionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Performance Shares, Market Condition",
        "label": "Performance Shares, Market Condition [Member]",
        "terseLabel": "Performance Shares, Market Condition"
       }
      }
     },
     "localname": "PerformanceSharesMarketConditionMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_PerformanceStockUnitsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Performance stock units [Member]",
        "label": "Performance Stock Units [Member]",
        "terseLabel": "Performance Stock Units"
       }
      }
     },
     "localname": "PerformanceStockUnitsMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ProcessingBusinessMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Processing Business",
        "label": "Processing Business [Member]",
        "terseLabel": "Processing Business"
       }
      }
     },
     "localname": "ProcessingBusinessMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_QualityAluminumProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Quality Aluminum Products",
        "label": "Quality Aluminum Products [Member]",
        "terseLabel": "Quality Aluminum Products"
       }
      }
     },
     "localname": "QualityAluminumProductsMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_RenewablesAndAgtechMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Renewables and Agtech",
        "label": "Renewables and Agtech [Member]",
        "terseLabel": "Renewables and Agtech"
       }
      }
     },
     "localname": "RenewablesAndAgtechMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_RenewablesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Renewables",
        "label": "Renewables [Member]",
        "terseLabel": "Renewables"
       }
      }
     },
     "localname": "RenewablesMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reporting Unit, Carrying Amount in Excess of Fair Value, Number of Reporting Units",
        "label": "Reporting Unit, Carrying Amount in Excess of Fair Value, Number of Reporting Units",
        "terseLabel": "Carrying amount in excess of fair value, number of reporting units"
       }
      }
     },
     "localname": "ReportingUnitCarryingAmountInExcessOfFairValueNumberOfReportingUnits",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "rock_ResidentialMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Residential",
        "label": "Residential [Member]",
        "terseLabel": "Residential"
       }
      }
     },
     "localname": "ResidentialMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_RestructuringandRelatedCostNumberofFacilitiestobeClosed": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructuring and Related Cost, Number of Facilities to be Closed",
        "label": "Restructuring and Related Cost, Number of Facilities to be Closed",
        "terseLabel": "Number of consolidated facilities to be closed"
       }
      }
     },
     "localname": "RestructuringandRelatedCostNumberofFacilitiestobeClosed",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "rock_RetirementPlanNumberOfPlans": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Retirement Plan, Number Of Plans",
        "label": "Retirement Plan, Number Of Plans",
        "terseLabel": "Number of plans"
       }
      }
     },
     "localname": "RetirementPlanNumberOfPlans",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "rock_ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Components Of Income Tax Expense Benefit For Discontinued Operations.",
        "label": "Schedule Of Components Of Income Tax Expense Benefit For Discontinued Operations [Table Text Block]",
        "verboseLabel": "(Benefit of) Provision for Income Taxes from Discontinued Operations"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitForDiscontinuedOperationsTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of the intrinsic value of options exercised and fair value of restricted stock and restricted stock units vested during the period.",
        "label": "Schedule Of Fair Value Of Options Exercised And Other Awards Vested [Table Text Block]",
        "terseLabel": "Aggregate Intrinsic Value of Options Exercised and Aggregate Fair Value of Restricted Stock Units and Restricted Shares that Vested"
       }
      }
     },
     "localname": "ScheduleOfFairValueOfOptionsExercisedAndOtherAwardsVestedTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_ScheduleOfInterestCashPaymentTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of interest, cash payment [table text block]",
        "label": "Schedule Of Interest, Cash Payment [Table Text Block]",
        "terseLabel": "Schedule of Cash Paid for Interest"
       }
      }
     },
     "localname": "ScheduleOfInterestCashPaymentTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_ScheduleofBusinessCombinationCostsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Business Combination Costs [Table Text Block]",
        "label": "Schedule of Business Combination Costs [Table Text Block]",
        "terseLabel": "Schedule of Business Combination Costs"
       }
      }
     },
     "localname": "ScheduleofBusinessCombinationCostsTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_SecuredOvernightFinancingRateSOFRMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Secured Overnight Financing Rate (SOFR)",
        "label": "Secured Overnight Financing Rate (SOFR) [Member]",
        "terseLabel": "Secured Overnight Financing Rate (SOFR)"
       }
      }
     },
     "localname": "SecuredOvernightFinancingRateSOFRMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_SellingGeneralAndAdministrativeExpenseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Selling General And Administrative Expense [Member]",
        "label": "Selling General And Administrative Expense [Member]",
        "terseLabel": "Selling, general, and administrative expense"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpenseMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_SeniorCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Senior Credit Agreement [Member].",
        "label": "Senior Credit Agreement [Member]",
        "terseLabel": "Senior Credit Agreement"
       }
      }
     },
     "localname": "SeniorCreditAgreementMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period",
        "terseLabel": "Adjustments (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriod",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Performance Conditions Not Achieved",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Performance Conditions Not Achieved",
        "terseLabel": "Shares for which performance condition was not achieved (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodPerformanceConditionsNotAchieved",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "rock_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Weighted Average Grant Date Fair Value",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Adjustments in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Adjustments (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "rock_ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_ShareBasedCompensation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-Based Goods and Nonemployee Services Transaction, Share-based Compensation",
        "label": "Share-Based Goods and Nonemployee Services Transaction, Share-based Compensation",
        "terseLabel": "Expense recognized under the Non-Employee Directors Plan"
       }
      }
     },
     "localname": "ShareBasedGoodsandNonemployeeServicesTransactionSharebasedCompensation",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period",
        "label": "Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period",
        "terseLabel": "Share-based Compensation Arrangement By Share-based Payment Award, Average Company Stock Price, Measurement Period"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAverageCompanyStockPriceMeasurementPeriod",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "rock_SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Award Performance Period",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Performance Period",
        "terseLabel": "Award performance period"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardAwardPerformancePeriod",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "rock_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other Than Options, Grants Based On Targeted Thresholds, Percent",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other Than Options, Grants Based On Targeted Thresholds, Percent",
        "terseLabel": "Percent of grants awarded based on target threshold"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsBasedOnTargetedThresholdsPercent",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "rock_SharebasedCompensationMeasurementGrossProfitThresholdMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Measurement, Gross Profit Threshold [Member]",
        "label": "Share-based Compensation Measurement, Gross Profit Threshold [Member]",
        "terseLabel": "Gross Profit Threshold"
       }
      }
     },
     "localname": "SharebasedCompensationMeasurementGrossProfitThresholdMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_SharebasedCompensationMeasurementReturnOnInvestedCapitalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Measurement, Return On Invested Capital [Member]",
        "label": "Share-based Compensation Measurement, Return On Invested Capital [Member]",
        "terseLabel": "Return On Invested Capital"
       }
      }
     },
     "localname": "SharebasedCompensationMeasurementReturnOnInvestedCapitalMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_SharebasedCompensationMeasurementTotalShareholderReturnMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Measurement, Total Shareholder Return [Member]",
        "label": "Share-based Compensation Measurement, Total Shareholder Return [Member]",
        "terseLabel": "Total Shareholder Return"
       }
      }
     },
     "localname": "SharebasedCompensationMeasurementTotalShareholderReturnMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_StockCompensationExpenseRecognizedUnderEquityIncentivePlan": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_ShareBasedCompensation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Compensation Expense Recognized Under Equity Incentive Plan",
        "label": "Stock Compensation Expense Recognized Under Equity Incentive Plan",
        "terseLabel": "Expense recognized under the Plan"
       }
      }
     },
     "localname": "StockCompensationExpenseRecognizedUnderEquityIncentivePlan",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_StockCompensationExpenseRecognizedUnderTerminatedPlans": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_ShareBasedCompensation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock compensation expense recognized under terminated plans.",
        "label": "Stock Compensation Expense Recognized Under Terminated Plans",
        "terseLabel": "Expense recognized under the Prior Plan"
       }
      }
     },
     "localname": "StockCompensationExpenseRecognizedUnderTerminatedPlans",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Issued During Period, Shares, Restricted Stock Award, Settlement",
        "label": "Stock Issued During Period, Shares, Restricted Stock Award, Settlement",
        "terseLabel": "Net settlement of restricted stock units, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardSettlement",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "rock_StockIssuedDuringPeriodValueRestrictedStockAwardSettlement": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Issued During Period, Value, Restricted Stock Award, Settlement",
        "label": "Stock Issued During Period, Value, Restricted Stock Award, Settlement",
        "negatedTerseLabel": "Net settlement of restricted stock units"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardSettlement",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_SummaryOfSlowMovingInventoryActivityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rollforward of excess, obsolete, and slow-moving inventory reserve.",
        "label": "Summary Of Slow Moving Inventory Activity [Table Text Block]",
        "terseLabel": "Summary of Activity within the Reserve for Excess, Obsolete, and Slow Moving Inventory"
       }
      }
     },
     "localname": "SummaryOfSlowMovingInventoryActivityTableTextBlock",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rock_SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc.",
        "label": "Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc. [Member]",
        "terseLabel": "Sunfig Corporation, Architectural Mailboxes, LLC, Delta Separations, LLC, and Thermo Energy Systems Inc."
       }
      }
     },
     "localname": "SunfigCorporationArchitecturalMailboxesLLCDeltaSeparationsLLCAndThermoEnergySystemsIncMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_SunfigCorporationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sunfig Corporation",
        "label": "Sunfig Corporation [Member]",
        "terseLabel": "Sunfig Corporation"
       }
      }
     },
     "localname": "SunfigCorporationMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_TerraSmartLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "TerraSmart LLC",
        "label": "TerraSmart LLC [Member]",
        "terseLabel": "TerraSmart LLC"
       }
      }
     },
     "localname": "TerraSmartLLCMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ThermoEnergySystemsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Thermo Energy Systems [Member]",
        "label": "Thermo Energy Systems [Member]",
        "terseLabel": "Thermo Energy Systems"
       }
      }
     },
     "localname": "ThermoEnergySystemsMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_TotalAcquiredIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total acquired intangible assets, accumulated amortization",
        "label": "Total acquired intangible assets, Accumulated Amortization",
        "terseLabel": "Total acquired intangible assets, Accumulated Amortization"
       }
      }
     },
     "localname": "TotalAcquiredIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rock_TwoThousandEighteenEquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two Thousand Eighteen Equity Incentive Plan [Member]",
        "label": "Two Thousand Eighteen Equity Incentive Plan [Member]",
        "terseLabel": "2015 Equity Incentive Plan"
       }
      }
     },
     "localname": "TwoThousandEighteenEquityIncentivePlanMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_TwoThousandFifteenEquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two Thousand Fifteen Equity Incentive Plan [Member]",
        "label": "Two Thousand Fifteen Equity Incentive Plan [Member]",
        "terseLabel": "2015 Equity Incentive Plan"
       }
      }
     },
     "localname": "TwoThousandFifteenEquityIncentivePlanMember",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rock_ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Valuation Allowances And Reserves, Increase (Decrease) For Currency Translation",
        "label": "Valuation Allowances And Reserves, Increase (Decrease) For Currency Translation",
        "terseLabel": "Currency translation"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesIncreaseDecreaseForCurrencyTranslation",
     "nsuri": "http://www.gibraltar1.com/20221231",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "srt_AsiaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Asia [Member]",
        "terseLabel": "Asia"
       }
      }
     },
     "localname": "AsiaMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r322",
      "r370",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r394",
      "r398",
      "r464",
      "r465",
      "r466",
      "r467",
      "r469",
      "r470",
      "r472",
      "r474",
      "r475",
      "r856",
      "r857"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Axis]",
        "terseLabel": "Consolidation Items [Axis]"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidationItemsDomain": {
     "auth_ref": [
      "r322",
      "r370",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r394",
      "r398",
      "r464",
      "r465",
      "r466",
      "r467",
      "r469",
      "r470",
      "r472",
      "r474",
      "r475",
      "r856",
      "r857"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Domain]",
        "terseLabel": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember": {
     "auth_ref": [
      "r276",
      "r332",
      "r337",
      "r343",
      "r413",
      "r631",
      "r632",
      "r633",
      "r656",
      "r657",
      "r679",
      "r680",
      "r681",
      "r682",
      "r714"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption, Adjustment [Member]",
        "terseLabel": "Cumulative Effect, Period of Adoption, Adjustment"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionAdjustmentMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionAxis": {
     "auth_ref": [
      "r276",
      "r332",
      "r337",
      "r343",
      "r413",
      "r631",
      "r632",
      "r633",
      "r656",
      "r657",
      "r679",
      "r680",
      "r681",
      "r682",
      "r714"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Axis]",
        "terseLabel": "Cumulative Effect, Period of Adoption [Axis]"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionDomain": {
     "auth_ref": [
      "r276",
      "r332",
      "r337",
      "r343",
      "r413",
      "r631",
      "r632",
      "r633",
      "r656",
      "r657",
      "r679",
      "r680",
      "r681",
      "r682",
      "r714"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Domain]",
        "terseLabel": "Cumulative Effect, Period of Adoption [Domain]"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r404",
      "r778",
      "r861",
      "r915"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ManagementMember": {
     "auth_ref": [
      "r837",
      "r903"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Management [Member]",
        "terseLabel": "Management"
       }
      }
     },
     "localname": "ManagementMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r459",
      "r460",
      "r461",
      "r462",
      "r590",
      "r717",
      "r734",
      "r757",
      "r758",
      "r774",
      "r793",
      "r799",
      "r858",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r459",
      "r460",
      "r461",
      "r462",
      "r590",
      "r717",
      "r734",
      "r757",
      "r758",
      "r774",
      "r793",
      "r799",
      "r858",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r404",
      "r778",
      "r861",
      "r915"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NorthAmericaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "North America [Member]",
        "terseLabel": "North America"
       }
      }
     },
     "localname": "NorthAmericaMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r459",
      "r460",
      "r461",
      "r462",
      "r548",
      "r590",
      "r622",
      "r623",
      "r624",
      "r716",
      "r717",
      "r734",
      "r757",
      "r758",
      "r774",
      "r793",
      "r799",
      "r853",
      "r858",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r459",
      "r460",
      "r461",
      "r462",
      "r548",
      "r590",
      "r622",
      "r623",
      "r624",
      "r716",
      "r717",
      "r734",
      "r757",
      "r758",
      "r774",
      "r793",
      "r799",
      "r853",
      "r858",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r401",
      "r402",
      "r748",
      "r749",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755",
      "r756",
      "r777",
      "r798",
      "r861"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r401",
      "r402",
      "r742",
      "r748",
      "r749",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755",
      "r756",
      "r777",
      "r798",
      "r861"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r837",
      "r903"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]",
        "terseLabel": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Domain]",
        "terseLabel": "Title of Individual [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ValuationAndQualifyingAccountsDisclosureLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]",
        "terseLabel": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsDisclosureLineItems",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ValuationAndQualifyingAccountsDisclosureTable": {
     "auth_ref": [
      "r323",
      "r324",
      "r325",
      "r327",
      "r328"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]",
        "terseLabel": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsDisclosureTable",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AOCIAttributableToParentNetOfTaxRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "AOCI Attributable to Parent, Net of Tax [Roll Forward]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Roll Forward]"
       }
      }
     },
     "localname": "AOCIAttributableToParentNetOfTaxRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]",
        "terseLabel": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsNotesAndLoansReceivableLineItems": {
     "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": "Accounts, Notes, Loans and Financing Receivable [Line Items]",
        "terseLabel": "Accounts, Notes, Loans and Financing Receivable [Line Items]"
       }
      }
     },
     "localname": "AccountsNotesAndLoansReceivableLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r50"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.",
        "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]",
        "terseLabel": "Accrued Expenses"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpenses"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r49",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 1.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, Current",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableGrossCurrent": {
     "auth_ref": [
      "r291",
      "r406",
      "r407",
      "r761"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccountsReceivableDetails": {
       "order": 1.0,
       "parentTag": "rock_ContractsReceivableGrossCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before 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, before Allowance for Credit Loss, Current",
        "terseLabel": "Trade accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableGrossCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r743"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r406",
      "r407"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccountsReceivableDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "terseLabel": "Accounts receivable, net of allowance of $3,746 and $3,738, respectively",
        "totalLabel": "Accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccountsReceivableDetails",
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "auth_ref": [
      "r34",
      "r245",
      "r259"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.",
        "label": "Accrued Income Taxes, Current",
        "terseLabel": "Insurance"
       }
      }
     },
     "localname": "AccruedIncomeTaxesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedInsuranceCurrent": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Insurance, Current",
        "verboseLabel": "Interest and taxes"
       }
      }
     },
     "localname": "AccruedInsuranceCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "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 obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Liabilities, Current",
        "terseLabel": "Accrued expenses"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Liabilities, Current [Abstract]",
        "terseLabel": "Accrued Liabilities, Current [Abstract]"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent": {
     "auth_ref": [
      "r249",
      "r264"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities.",
        "label": "Accrued Liabilities",
        "totalLabel": "Total accrued expenses"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember": {
     "auth_ref": [
      "r63",
      "r69",
      "r231",
      "r815",
      "r816",
      "r817"
     ],
     "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]",
        "terseLabel": "Minimum post retirement benefit plan adjustments"
       }
      }
     },
     "localname": "AccumulatedDefinedBenefitPlansAdjustmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r143",
      "r285"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "negatedLabel": "Less: accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of increase (decrease) in accumulated equity from transactions and other events and circumstances from non-owner sources, including portion attributable to noncontrolling interest. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners (distributions to owners).",
        "label": "AOCI Including Portion Attributable to Noncontrolling Interest, before Tax",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossBeforeTax1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": {
     "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": "Accumulated Other Comprehensive Income (Loss) [Line Items]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Line Items]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r66",
      "r68",
      "r69",
      "r292",
      "r729",
      "r739",
      "r740"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period",
        "terseLabel": "Accumulated other comprehensive (loss) income"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails",
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": {
     "auth_ref": [
      "r305",
      "r306",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r694"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss).",
        "label": "Accumulated Other Comprehensive Income (Loss) [Table]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Table]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r65",
      "r69",
      "r231",
      "r715",
      "r735",
      "r736",
      "r815",
      "r816",
      "r817",
      "r830",
      "r831",
      "r832"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accumulated Other Comprehensive (Loss) Income"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "auth_ref": [
      "r61",
      "r69",
      "r231",
      "r306",
      "r307",
      "r689",
      "r690",
      "r691",
      "r692",
      "r694",
      "r815"
     ],
     "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]",
        "terseLabel": "Foreign Currency Translation Adjustment"
       }
      }
     },
     "localname": "AccumulatedTranslationAdjustmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r127"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life",
        "terseLabel": "Weighted-Average Amortization Period"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r41",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.",
        "label": "Additional Paid in Capital",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r631",
      "r632",
      "r633",
      "r830",
      "r831",
      "r832",
      "r896"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]",
        "terseLabel": "Additional Paid-In Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r194",
      "r195",
      "r593"
     ],
     "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": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Stock compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdvertisingCostsPolicyTextBlock": {
     "auth_ref": [
      "r636"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for advertising cost.",
        "label": "Advertising Cost [Policy Text Block]",
        "terseLabel": "Advertising"
       }
      }
     },
     "localname": "AdvertisingCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AdvertisingExpense": {
     "auth_ref": [
      "r637"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line.",
        "label": "Advertising Expense",
        "terseLabel": "Advertising costs"
       }
      }
     },
     "localname": "AdvertisingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r293",
      "r410",
      "r414"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccountsReceivableDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "negatedTerseLabel": "Less allowance for doubtful accounts",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "terseLabel": "Allowance for credit loss"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccountsReceivableDetails",
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]",
        "terseLabel": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRollforward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AmortizationOfFinancingCostsAndDiscounts": {
     "auth_ref": [
      "r492",
      "r696",
      "r772",
      "r773",
      "r820"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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 Debt Issuance Costs and Discounts",
        "terseLabel": "Exit activity costs, non-cash"
       }
      }
     },
     "localname": "AmortizationOfFinancingCostsAndDiscounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r96",
      "r125",
      "r133"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.",
        "label": "Amortization of Intangible Assets",
        "terseLabel": "Amortization of Intangible Assets"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r355"
     ],
     "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": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Anti-dilutive number of shares"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "auth_ref": [
      "r106"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of antidilutive security.",
        "label": "Antidilutive Securities [Axis]",
        "terseLabel": "Antidilutive Securities [Axis]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": {
     "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": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]",
        "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "auth_ref": [
      "r106"
     ],
     "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]",
        "terseLabel": "Antidilutive Securities, Name [Domain]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r243",
      "r258",
      "r289",
      "r318",
      "r378",
      "r390",
      "r396",
      "r412",
      "r464",
      "r465",
      "r467",
      "r468",
      "r469",
      "r471",
      "r473",
      "r475",
      "r476",
      "r674",
      "r677",
      "r686",
      "r797",
      "r856",
      "r857",
      "r904"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets",
        "terseLabel": "Total assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "Assets"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r280",
      "r297",
      "r318",
      "r412",
      "r464",
      "r465",
      "r467",
      "r468",
      "r469",
      "r471",
      "r473",
      "r475",
      "r476",
      "r674",
      "r677",
      "r686",
      "r797",
      "r856",
      "r857",
      "r904"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r145",
      "r278",
      "r279"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of.",
        "label": "Disposal Group, Including Discontinued Operation, Assets",
        "totalLabel": "Total assets held for sale"
       }
      }
     },
     "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disposal Group, Including Discontinued Operation, Assets [Abstract]",
        "terseLabel": "Assets held for sale"
       }
      }
     },
     "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardDateAxis": {
     "auth_ref": [
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by date or year award under share-based payment arrangement is granted.",
        "label": "Award Date [Axis]",
        "terseLabel": "Award Date [Axis]"
       }
      }
     },
     "localname": "AwardDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardDateDomain": {
     "auth_ref": [
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date or year award under share-based payment arrangement is granted.",
        "label": "Award Date [Domain]",
        "terseLabel": "Award Date [Domain]"
       }
      }
     },
     "localname": "AwardDateDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r597",
      "r598",
      "r599",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r621",
      "r622",
      "r623",
      "r624",
      "r625"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "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]",
        "terseLabel": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r233",
      "r234"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]",
        "terseLabel": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BaseRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Minimum rate investor will accept.",
        "label": "Base Rate [Member]",
        "terseLabel": "Base Rate"
       }
      }
     },
     "localname": "BaseRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "auth_ref": [
      "r142"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.",
        "label": "Buildings and Improvements, Gross",
        "verboseLabel": "Building and improvements"
       }
      }
     },
     "localname": "BuildingsAndImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r672",
      "r787",
      "r790"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r213",
      "r214",
      "r672",
      "r787",
      "r790"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Business Acquisition [Line Items]",
        "terseLabel": "Business Acquisition [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "auth_ref": [
      "r212"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.",
        "label": "Business Combination, Acquisition Related Costs",
        "terseLabel": "Total acquisition related costs"
       }
      }
     },
     "localname": "BusinessCombinationAcquisitionRelatedCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r221",
      "r222",
      "r223"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Business Combination, Consideration Transferred",
        "terseLabel": "Acquisition purchase price"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r226",
      "r673"
     ],
     "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]",
        "verboseLabel": "Acquisitions"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/Acquisitions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "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, acquired at the acquisition date. 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.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 8.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill",
        "terseLabel": "Acquired intangible assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r215",
      "r216"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net",
        "totalLabel": "Fair value of purchase consideration"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "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": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other",
        "negatedTerseLabel": "Other liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "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": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "auth_ref": [
      "r215",
      "r216"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment",
        "terseLabel": "Property, plant, and equipment"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]",
        "terseLabel": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "auth_ref": [
      "r210"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.",
        "label": "Business Combinations Policy [Policy Text Block]",
        "terseLabel": "Acquisition related assets and liabilities"
       }
      }
     },
     "localname": "BusinessCombinationsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessExitCosts1": {
     "auth_ref": [
      "r96"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Includes, but is not limited to, one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, and relocating employees, and termination benefits associated with an ongoing benefit arrangement. Excludes expenses associated with special or contractual termination benefits, a discontinued operation or an asset retirement obligation.",
        "label": "Business Exit Costs",
        "terseLabel": "Exit activity costs recognized",
        "verboseLabel": "Exit activity costs (recoveries)"
       }
      }
     },
     "localname": "BusinessExitCosts1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostLineItems": {
     "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": "Capitalized Contract Cost [Line Items]",
        "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Line Items]"
       }
      }
     },
     "localname": "CapitalizedContractCostLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CapitalizedContractCostTable": {
     "auth_ref": [
      "r420"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about cost capitalized in obtaining or fulfilling contract with customer.",
        "label": "Capitalized Contract Cost [Table]",
        "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Table]"
       }
      }
     },
     "localname": "CapitalizedContractCostTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r98",
      "r283",
      "r759"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r99"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents, Policy [Policy Text Block]",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r93",
      "r98",
      "r104"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and cash equivalents at end of year",
        "periodStartLabel": "Cash and cash equivalents at beginning of year"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r93",
      "r237"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net increase (decrease) in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations": {
     "auth_ref": [
      "r23",
      "r93"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) of investing activities of 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": "Cash Provided by (Used in) Investing Activities, Discontinued Operations",
        "terseLabel": "Net cash used in investing activities of discontinued operations"
       }
      }
     },
     "localname": "CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations": {
     "auth_ref": [
      "r23",
      "r93"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) of operating activities of discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Cash Provided by (Used in) Operating Activities, Discontinued Operations",
        "terseLabel": "Net cash (used in) provided by operating activities of discontinued operations"
       }
      }
     },
     "localname": "CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]",
        "terseLabel": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r155",
      "r457",
      "r458",
      "r744",
      "r855"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/CommitmentsandContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r830",
      "r831",
      "r896"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r40"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r40"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, shares authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r40"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common stock, shares issued (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r40",
      "r162"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common stock, shares outstanding (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r40",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "verboseLabel": "Common stock, $0.01 par value; authorized 100,000 shares; 34,060 and 33,799 shares issued and outstanding in 2022 and 2021"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r71",
      "r301",
      "r303",
      "r310",
      "r725",
      "r731"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Total comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "auth_ref": [
      "r84",
      "r309",
      "r724",
      "r730"
     ],
     "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]",
        "verboseLabel": "Accumulated Other Comprehensive Income (Loss)"
       }
      }
     },
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLoss"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r108",
      "r109",
      "r235",
      "r236",
      "r404",
      "r743"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r108",
      "r109",
      "r235",
      "r236",
      "r404",
      "r741",
      "r743"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r108",
      "r109",
      "r235",
      "r236",
      "r404",
      "r743",
      "r916"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]",
        "terseLabel": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r108",
      "r109",
      "r235",
      "r236",
      "r404"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Concentrations of credit risk"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r108",
      "r109",
      "r235",
      "r236",
      "r404",
      "r743"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.",
        "label": "Concentration Risk Type [Domain]",
        "terseLabel": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r230",
      "r762"
     ],
     "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]",
        "terseLabel": "Principles of consolidation"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConstructionInProgressGross": {
     "auth_ref": [
      "r142"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of 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, Gross",
        "verboseLabel": "Construction in progress"
       }
      }
     },
     "localname": "ConstructionInProgressGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r860"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.",
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]",
        "terseLabel": "Contract with Customer, Asset and Liability"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerAssetNet": {
     "auth_ref": [
      "r498",
      "r500",
      "r519"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss",
        "terseLabel": "Costs in excess of billings"
       }
      }
     },
     "localname": "ContractWithCustomerAssetNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetReclassifiedToReceivable": {
     "auth_ref": [
      "r775"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time from transfer to receivable due to right to consideration becoming unconditional.",
        "label": "Contract with Customer, Asset, Reclassified to Receivable",
        "terseLabel": "Revenue recognized which was in contract liabilities"
       }
      }
     },
     "localname": "ContractWithCustomerAssetReclassifiedToReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r498",
      "r499",
      "r519"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Contract with Customer, Liability",
        "negatedTerseLabel": "Contract with customer liability",
        "terseLabel": "Unearned revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails",
      "http://www.gibraltar1.com/role/RevenueContractAssetsandLiabilitiesDetails",
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r498",
      "r499",
      "r519"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Contract with Customer, Liability, Current",
        "terseLabel": "Billings in excess of cost"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CorporateNonSegmentMember": {
     "auth_ref": [
      "r115",
      "r389",
      "r390",
      "r391",
      "r392",
      "r398",
      "r836"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment.",
        "label": "Corporate, Non-Segment [Member]",
        "terseLabel": "Corporate",
        "verboseLabel": "Unallocated Corporate Expenses"
       }
      }
     },
     "localname": "CorporateNonSegmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfRevenue": {
     "auth_ref": [
      "r81",
      "r318",
      "r412",
      "r464",
      "r465",
      "r467",
      "r468",
      "r469",
      "r471",
      "r473",
      "r475",
      "r476",
      "r686",
      "r856"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.",
        "label": "Cost of Revenue",
        "terseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfRevenue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "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]",
        "terseLabel": "Cost of sales",
        "verboseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"
     ],
     "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]",
        "terseLabel": "Credit Facility [Axis]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Domain]",
        "terseLabel": "Credit Facility [Domain]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r823",
      "r892",
      "r894"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current Federal Tax Expense (Benefit)",
        "terseLabel": "U.S. Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "auth_ref": [
      "r823",
      "r892"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current Foreign Tax Expense (Benefit)",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "CurrentForeignTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r209",
      "r653",
      "r661",
      "r823"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current Income Tax Expense (Benefit)",
        "totalLabel": "Total current"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "terseLabel": "Current:"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r823",
      "r892",
      "r894"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current State and Local Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r107",
      "r404"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]",
        "terseLabel": "Customer Concentration Risk"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.",
        "label": "Customer Relationships [Member]",
        "terseLabel": "Customer relationships"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r33",
      "r34",
      "r35",
      "r244",
      "r247",
      "r257",
      "r322",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r697",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r821"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails",
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.",
        "label": "Debt Instrument, Basis Spread on Variable Rate",
        "verboseLabel": "LIBOR floor, plus"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "auth_ref": [
      "r35",
      "r247",
      "r257",
      "r494"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LongTermDebt",
       "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": "Long-Term Debt, Gross",
        "terseLabel": "Long term debt gross"
       }
      }
     },
     "localname": "DebtInstrumentCarryingAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r239",
      "r241",
      "r477",
      "r697",
      "r770",
      "r771"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Term loan (up to)"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r54",
      "r478"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "verboseLabel": "Initial applicable margin"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Debt Instrument [Line Items]",
        "terseLabel": "Debt Instrument [Line Items]"
       }
      }
     },
     "localname": "DebtInstrumentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r55",
      "r322",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r697",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r821"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument, Name [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails",
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r55",
      "r163",
      "r164",
      "r165",
      "r166",
      "r238",
      "r239",
      "r241",
      "r255",
      "r322",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r697",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r821"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Schedule of Long-Term Debt Instruments [Table]",
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]"
       }
      }
     },
     "localname": "DebtInstrumentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredChargesPolicyTextBlock": {
     "auth_ref": [
      "r288"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for deferral and amortization of significant deferred charges.",
        "label": "Deferred Charges, Policy [Policy Text Block]",
        "terseLabel": "Deferred charges"
       }
      }
     },
     "localname": "DeferredChargesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r823",
      "r893",
      "r894"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "terseLabel": "U.S. Federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFinanceCostsNet": {
     "auth_ref": [
      "r240",
      "r859"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": -1.0
      }
     },
     "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": "Debt Issuance Costs, Net",
        "negatedTerseLabel": "Less unamortized debt issuance costs"
       }
      }
     },
     "localname": "DeferredFinanceCostsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r209",
      "r823",
      "r893"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Foreign Income Tax Expense (Benefit)",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "DeferredForeignIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r96",
      "r209",
      "r654",
      "r660",
      "r661",
      "r823"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Income Tax Expense (Benefit)",
        "totalLabel": "Total deferred",
        "verboseLabel": "Provision for deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "terseLabel": "Deferred:"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r37",
      "r38",
      "r246",
      "r256",
      "r648"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "totalLabel": "Gross deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r640",
      "r641"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred Income Tax Liabilities, Net",
        "verboseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r823",
      "r893",
      "r894"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsCapitalLossCarryforwards": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible capital loss carryforwards.",
        "label": "Deferred Tax Assets, Capital Loss Carryforwards",
        "negatedTerseLabel": "Capital loss carryforward"
       }
      }
     },
     "localname": "DeferredTaxAssetsCapitalLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r649"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "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 and carryforwards.",
        "label": "Deferred Tax Assets, Gross",
        "negatedTotalLabel": "Gross deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination.",
        "label": "Deferred Tax Assets, in Process Research and Development",
        "negatedTerseLabel": "Capitalized research and development costs"
       }
      }
     },
     "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r890"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 2.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": "Deferred Tax Assets, Net of Valuation Allowance",
        "negatedTotalLabel": "Deferred tax assets, net of valuation allowances"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards",
        "terseLabel": "Deferred tax assets, net of operating losses"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.",
        "label": "Deferred Tax Assets, Other",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost",
        "negatedLabel": "Equity compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r650"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 2.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": "Deferred Tax Assets, Valuation Allowance",
        "terseLabel": "Valuation allowances"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r196",
      "r890"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "Deferred Tax Liabilities, Net",
        "totalLabel": "Net deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill": {
     "auth_ref": [
      "r206",
      "r224",
      "r225",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "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 goodwill.",
        "label": "Deferred Tax Liabilities, Goodwill",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "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 other than goodwill.",
        "label": "Deferred Tax Liabilities, Intangible Assets",
        "terseLabel": "Intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "order": 4.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 classified as other.",
        "label": "Deferred Tax Liabilities, Other",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r206",
      "r891"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails": {
       "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 property, plant, and equipment.",
        "label": "Deferred Tax Liabilities, Property, Plant and Equipment",
        "terseLabel": "Depreciation"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesDeferredTaxLiabilitiesAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesUndistributedForeignEarnings": {
     "auth_ref": [
      "r891"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from undistributed earnings of subsidiary and other recognized entity not within country of domicile. Includes, but is not limited to, other basis differences.",
        "label": "Deferred Tax Liabilities, Undistributed Foreign Earnings",
        "terseLabel": "Undistributed earnings of foreign subsidiaries"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesUndistributedForeignEarnings",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax": {
     "auth_ref": [
      "r69",
      "r568"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before 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": "Defined Benefit Plan, Accumulated Other Comprehensive Income (Loss), Gain (Loss), before Tax",
        "negatedTerseLabel": "Unrecognized actuarial gain"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax": {
     "auth_ref": [
      "r69",
      "r568"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax, of accumulated other comprehensive (income) loss for cost (credit) of benefit change attributable to participants' prior service from plan amendment or plan initiation of defined benefit plan, that has not been recognized in net periodic benefit cost (credit).",
        "label": "Defined Benefit Plan, Accumulated Other Comprehensive (Income) Loss, Prior Service Cost (Credit), before Tax",
        "terseLabel": "Unamortized prior service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetPriorServiceCostCreditBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanActuarialGainLoss": {
     "auth_ref": [
      "r532"
     ],
     "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": "Defined Benefit Plan, Benefit Obligation, Actuarial Gain (Loss)",
        "negatedNetLabel": "Actuarial losses (gains)"
       }
      }
     },
     "localname": "DefinedBenefitPlanActuarialGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses": {
     "auth_ref": [
      "r526",
      "r563",
      "r580",
      "r785",
      "r786"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails": {
       "order": 4.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": "Defined Benefit Plan, Amortization of Gain (Loss)",
        "negatedTerseLabel": "Loss amortization (2)"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmortizationOfGainsLosses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit": {
     "auth_ref": [
      "r526",
      "r564",
      "r581",
      "r785",
      "r786"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of prior service cost (credit) recognized in net periodic benefit cost (credit) of defined benefit plan.",
        "label": "Defined Benefit Plan, Amortization of Prior Service Cost (Credit)",
        "terseLabel": "Amortization of unrecognized prior service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmortizationOfPriorServiceCostCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet": {
     "auth_ref": [
      "r172",
      "r173"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset (liability), recognized in statement of financial position, for defined benefit pension and other postretirement plans.",
        "label": "Defined Benefit Plan, Amounts for Asset (Liability) Recognized in Statement of Financial Position",
        "negatedTotalLabel": "Net amount recognized",
        "totalLabel": "Net amount recognized"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmountsRecognizedInBalanceSheet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax": {
     "auth_ref": [
      "r62",
      "r66",
      "r176"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax, after reclassification adjustment, of increase (decrease) in accumulated other comprehensive income from gain (loss) of defined benefit plan.",
        "label": "Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss), after Reclassification Adjustment, before Tax",
        "negatedLabel": "Pre-tax accumulated other comprehensive loss \u2013 unamortized post-retirement healthcare costs"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate": {
     "auth_ref": [
      "r569"
     ],
     "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": "Defined Benefit Plan, Assumptions Used Calculating Benefit Obligation, Discount Rate",
        "terseLabel": "Discount rate"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligation": {
     "auth_ref": [
      "r527"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails": {
       "order": 1.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": "Defined Benefit Plan, Benefit Obligation",
        "periodEndLabel": "Projected benefit obligation at",
        "periodStartLabel": "Projected benefit obligation at"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid": {
     "auth_ref": [
      "r534",
      "r586"
     ],
     "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": "Defined Benefit Plan, Benefit Obligation, Benefits Paid",
        "negatedTerseLabel": "Benefits paid"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligationBenefitsPaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Defined Benefit Plan, Change in Benefit Obligation [Roll Forward]",
        "terseLabel": "Defined Benefit Plan, Change in Benefit Obligation [Roll Forward]"
       }
      }
     },
     "localname": "DefinedBenefitPlanChangeInBenefitObligationRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanDisclosureLineItems": {
     "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": "Defined Benefit Plan Disclosure [Line Items]",
        "terseLabel": "Defined Benefit Plan Disclosure [Line Items]"
       }
      }
     },
     "localname": "DefinedBenefitPlanDisclosureLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter": {
     "auth_ref": [
      "r557"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in five fiscal years after fifth fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, after Year Five for Next Five Years",
        "verboseLabel": "Years 2028 - 2032"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths": {
     "auth_ref": [
      "r557"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in next fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year One",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive": {
     "auth_ref": [
      "r557"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in fifth fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Five",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour": {
     "auth_ref": [
      "r557"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in fourth fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Four",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree": {
     "auth_ref": [
      "r557"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in third fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Three",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo": {
     "auth_ref": [
      "r557"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in second fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Two",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFairValueOfPlanAssets": {
     "auth_ref": [
      "r538",
      "r549",
      "r550",
      "r551",
      "r783",
      "r784",
      "r785"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails": {
       "order": 2.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": "Defined Benefit Plan, Plan Assets, Amount",
        "terseLabel": "Fair value of plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanFairValueOfPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFundedStatusOfPlan": {
     "auth_ref": [
      "r524",
      "r547",
      "r785"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DefinedBenefitPlanAmountsRecognizedInBalanceSheet",
       "weight": 1.0
      }
     },
     "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": "Defined Benefit Plan, Funded (Unfunded) Status of Plan",
        "totalLabel": "Under funded status"
       }
      }
     },
     "localname": "DefinedBenefitPlanFundedStatusOfPlan",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanInterestCost": {
     "auth_ref": [
      "r526",
      "r530",
      "r561",
      "r578",
      "r785",
      "r786"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails": {
       "order": 2.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": "Defined Benefit Plan, Interest Cost",
        "terseLabel": "Interest cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanInterestCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": {
     "auth_ref": [
      "r559",
      "r576",
      "r785",
      "r786"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails": {
       "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": "Defined Benefit Plan, Net Periodic Benefit Cost (Credit)",
        "totalLabel": "Net periodic pension cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanNetPeriodicBenefitCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAmendments": {
     "auth_ref": [
      "r535"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in benefit obligation of defined benefit plan from change in terms of existing plan or initiation of new plan.",
        "label": "Defined Benefit Plan, Benefit Obligation, Increase (Decrease) for Plan Amendment",
        "terseLabel": "Plan amendments"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAmendments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanServiceCost": {
     "auth_ref": [
      "r528",
      "r560",
      "r577",
      "r785",
      "r786"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost for actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.",
        "label": "Defined Benefit Plan, Service Cost",
        "terseLabel": "Service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanServiceCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanUltimateHealthCareCostTrendRate1": {
     "auth_ref": [
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ultimate trend rate for health care cost for defined benefit postretirement plan.",
        "label": "Defined Benefit Plan, Ultimate Health Care Cost Trend Rate",
        "verboseLabel": "Ultimate healthcare trend rates"
       }
      }
     },
     "localname": "DefinedBenefitPlanUltimateHealthCareCostTrendRate1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r177",
      "r178",
      "r179",
      "r180",
      "r181"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosures and provisions pertaining to defined benefit pension plans or other postretirement defined benefit plans. The arrangements are generally based on terms and conditions stipulated by the entity, and which contain a promise by the employer to pay certain amounts or awards at designated future dates, including a period after retirement, upon compliance with stipulated requirements. Excludes disclosures pertaining to defined contribution plans.",
        "label": "Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]",
        "terseLabel": "Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]"
       }
      }
     },
     "localname": "DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems": {
     "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": "Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]",
        "terseLabel": "Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]"
       }
      }
     },
     "localname": "DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPostretirementHealthCoverageMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan designed to provide postretirement health benefits to retiree or beneficiary. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Postretirement Health Coverage [Member]",
        "terseLabel": "Unamortized Post-Retirement Health Care Costs",
        "verboseLabel": "Other Postretirement Benefits"
       }
      }
     },
     "localname": "DefinedBenefitPostretirementHealthCoverageMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r96",
      "r141"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation",
        "terseLabel": "Depreciation expense"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofInterestCapitalizedandDepreciationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r96",
      "r373"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "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": "Depreciation, Depletion and Amortization",
        "terseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Disaggregation of Revenue [Line Items]",
        "terseLabel": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [
      "r518",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table]",
        "terseLabel": "Disaggregation of Revenue [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r861"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Disaggregation of Revenue"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r596",
      "r627",
      "r628",
      "r630",
      "r635",
      "r794"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement [Text Block]",
        "terseLabel": "Equity-Based Compensation"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": {
     "auth_ref": [
      "r182",
      "r193"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of share-based payment arrangement.",
        "label": "Disclosure of Share-Based Compensation Arrangements by Share-Based Payment Award [Table Text Block]",
        "terseLabel": "Summary of Compensation Expense Connection with Awards"
       }
      }
     },
     "localname": "DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax": {
     "auth_ref": [
      "r8",
      "r10",
      "r14"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of gain (loss) not previously recognized resulting from the disposal of a discontinued operation.",
        "label": "Discontinued Operation, Gain (Loss) from Disposal of Discontinued Operation, before Income Tax",
        "negatedTerseLabel": "Estimated pre-tax loss"
       }
      }
     },
     "localname": "DiscontinuedOperationGainLossFromDisposalOfDiscontinuedOperationBeforeIncomeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax": {
     "auth_ref": [
      "r8",
      "r9",
      "r10",
      "r11",
      "r14",
      "r21",
      "r76",
      "r266"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of income (loss) from a discontinued operation. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.",
        "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax",
        "totalLabel": "(Loss) income before taxes",
        "verboseLabel": "Income (loss) before taxes"
       }
      }
     },
     "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation": {
     "auth_ref": [
      "r9",
      "r10",
      "r11",
      "r14",
      "r21",
      "r26",
      "r642",
      "r659",
      "r667"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
       "weight": -1.0
      },
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax expense (benefit) related to a discontinued operation. Includes, but is not limited to, tax expense (benefit) related to income (loss) from operations during the phase-out period, tax expense (benefit) related to gain (loss) on disposal, tax expense (benefit) related to gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and tax expense (benefit) related to adjustments of a prior period gain (loss) on disposal.",
        "label": "Discontinued Operation, Tax Effect of Discontinued Operation",
        "totalLabel": "Provision for income taxes",
        "verboseLabel": "Provision for income taxes"
       }
      }
     },
     "localname": "DiscontinuedOperationTaxEffectOfDiscontinuedOperation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Discontinued Operations and Disposal Groups [Abstract]"
       }
      }
     },
     "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DiscontinuedOperationsDisposedOfBySaleMember": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component or group of components disposed of by sale and representing a strategic shift that has or will have a major effect on operations and financial results.",
        "label": "Discontinued Operations, Disposed of by Sale [Member]",
        "terseLabel": "Discontinued Operations, Disposed of by Sale"
       }
      }
     },
     "localname": "DiscontinuedOperationsDisposedOfBySaleMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DiscontinuedOperationsHeldforsaleMember": {
     "auth_ref": [
      "r3",
      "r7",
      "r278"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component or group of components classified as held-for-sale and representing a strategic shift that has or will have a major effect on operations and financial results. Includes a business or nonprofit activity on acquisition classified as held-for-sale.",
        "label": "Discontinued Operations, Held-for-sale [Member]",
        "terseLabel": "Discontinued Operations, Held-for-sale"
       }
      }
     },
     "localname": "DiscontinuedOperationsHeldforsaleMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisposalGroupClassificationAxis": {
     "auth_ref": [
      "r278"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by disposal group classification.",
        "label": "Disposal Group Classification [Axis]",
        "terseLabel": "Disposal Group Classification [Axis]"
       }
      }
     },
     "localname": "DisposalGroupClassificationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisposalGroupClassificationDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component or group of components disposed of, including but not limited to, disposal group held-for-sale or disposed of by sale, disposed of by means other than sale, and discontinued operations.",
        "label": "Disposal Group Classification [Domain]",
        "terseLabel": "Disposal Group Classification [Domain]"
       }
      }
     },
     "localname": "DisposalGroupClassificationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember": {
     "auth_ref": [
      "r139",
      "r146",
      "r278"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disposal group that is classified as held-for-sale. Excludes disposals classified as discontinued operations.",
        "label": "Disposal Group, Held-for-sale, Not Discontinued Operations [Member]",
        "terseLabel": "Disposal Group, Held-for-sale, Not Discontinued Operations"
       }
      }
     },
     "localname": "DisposalGroupHeldforsaleNotDiscontinuedOperationsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r145"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as accounts, notes and loans receivable attributable to disposal group held for sale or disposed of.",
        "label": "Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net",
        "terseLabel": "Accounts receivable, net of allowance"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r140",
      "r145"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as accounts payable attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Accounts Payable, Current",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationAccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r140",
      "r145"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as accrued liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Accrued Liabilities, Current",
        "terseLabel": "Accrued expenses"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of consideration received or receivable for the disposal of assets and liabilities, including discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Consideration",
        "terseLabel": "Net proceeds of sale of business"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationConsideration",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r138",
      "r145"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as intangible assets, excluding goodwill, attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Intangible Assets, Noncurrent",
        "terseLabel": "Acquired intangibles, net"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense": {
     "auth_ref": [
      "r12",
      "r13",
      "r22",
      "r30"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest expense attributable to disposal group, including, but not limited to, discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Interest Expense",
        "terseLabel": "Interest expense allocation"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r140",
      "r145"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as inventory attributable to disposal group, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Inventory, Current",
        "terseLabel": "Inventories, net of reserves"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationInventoryCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense": {
     "auth_ref": [
      "r22"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating expense attributable to disposal group, including, but not limited to, discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Operating Expense",
        "terseLabel": "Operating expenses"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss": {
     "auth_ref": [
      "r22"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating income (loss) attributable to disposal group, including, but not limited to, discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Operating Income (Loss)",
        "terseLabel": "Operating loss"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r140",
      "r145"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as prepaid and other assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r138",
      "r145"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as property, plant and equipment attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Property, Plant and Equipment, Noncurrent",
        "terseLabel": "Property, plant, and equipment, net"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue": {
     "auth_ref": [
      "r22",
      "r279"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue attributable to disposal group, including, but not limited to, discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Revenue",
        "terseLabel": "Net sales"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationRevenue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": {
     "auth_ref": [
      "r31",
      "r149"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.",
        "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]",
        "terseLabel": "DISCONTINUED OPERATIONS"
       }
      }
     },
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": {
     "auth_ref": [
      "r787",
      "r790"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of disposal group.",
        "label": "Disposal Group Name [Domain]",
        "terseLabel": "Disposal Group Name [Domain]"
       }
      }
     },
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DomesticCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.",
        "label": "Domestic Tax Authority [Member]",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "DomesticCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Net earnings per share \u2013 Basic:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r311",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r344",
      "r346",
      "r352",
      "r353",
      "r354",
      "r358",
      "r682",
      "r683",
      "r726",
      "r732",
      "r765"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Earnings Per Share, Basic",
        "totalLabel": "Net income (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r311",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r346",
      "r352",
      "r353",
      "r354",
      "r358",
      "r682",
      "r683",
      "r726",
      "r732",
      "r765"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Earnings Per Share, Diluted",
        "totalLabel": "Net income (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDilutedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Diluted [Abstract]",
        "terseLabel": "Net earnings per share \u2013 Diluted:"
       }
      }
     },
     "localname": "EarningsPerShareDilutedAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r355",
      "r356",
      "r357",
      "r359"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Earnings per Share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r687"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations",
        "terseLabel": "Effect of exchange rate changes on cash"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r643"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "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": "Effective Income Tax Rate Reconciliation, Percent",
        "totalLabel": "Effective income tax rate, percentage"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Percent [Abstract]",
        "terseLabel": "Effective Income Tax Rate Reconciliation, Percent [Abstract]"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r320",
      "r643",
      "r663"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "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": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent",
        "netLabel": "Statutory tax rate, percentage",
        "terseLabel": "Statutory rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails",
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r889",
      "r895"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "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 attributable to changes in the valuation allowance for deferred tax assets.",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent",
        "terseLabel": "Change in valuation allowance"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments": {
     "auth_ref": [
      "r889",
      "r895"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "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 other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Percent",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount": {
     "auth_ref": [
      "r888",
      "r889"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount 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": "Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Amount",
        "terseLabel": "Excess tax benefit on stock based compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent": {
     "auth_ref": [
      "r888",
      "r889"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 4.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": "Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Percent",
        "terseLabel": "Excess tax benefit on stock based compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r889",
      "r895"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "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 applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent",
        "terseLabel": "State taxes, less federal effect"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits": {
     "auth_ref": [
      "r889",
      "r895"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "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 tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Percent",
        "negatedTerseLabel": "Federal tax credits"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Employee-related Liabilities, Current",
        "verboseLabel": "Customer rebates"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "terseLabel": "Unrecognized compensation cost"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r629"
     ],
     "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": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Weighted average cost recognition period, in years"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": {
     "auth_ref": [
      "r626"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Expense, Tax Benefit",
        "terseLabel": "Tax benefits recognized related to stock compensation expense"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r162",
      "r276",
      "r305",
      "r306",
      "r307",
      "r329",
      "r330",
      "r331",
      "r334",
      "r340",
      "r342",
      "r361",
      "r413",
      "r497",
      "r631",
      "r632",
      "r633",
      "r656",
      "r657",
      "r681",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r694",
      "r715",
      "r735",
      "r736",
      "r737"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]",
        "terseLabel": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ExtinguishmentOfDebtLineItems": {
     "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": "Extinguishment of Debt [Line Items]",
        "terseLabel": "Extinguishment of Debt [Line Items]"
       }
      }
     },
     "localname": "ExtinguishmentOfDebtLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]",
        "terseLabel": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r685"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.",
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value Measurements"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/FairValueMeasurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs": {
     "auth_ref": [
      "r118",
      "r416",
      "r767"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of writeoff of financing receivable, charged against allowance for credit loss.",
        "label": "Financing Receivable, Allowance for Credit Loss, Writeoff",
        "negatedLabel": "Accounts written off against allowance and other adjustments"
       }
      }
     },
     "localname": "FinancingReceivableAllowanceForCreditLossesWriteOffs",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r287",
      "r438"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "verboseLabel": "Accumulated Amortization, Finite-lived intangible assets"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r134"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One",
        "verboseLabel": "2020"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.",
        "label": "Finite-Lived Intangible Assets Amortization Expense [Table Text Block]",
        "terseLabel": "Schedule of Intangible Assets Amortization Expense"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r134"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Five",
        "verboseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r134"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four",
        "verboseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r134"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three",
        "verboseLabel": "2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r134"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two",
        "verboseLabel": "2021"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r434",
      "r437",
      "r438",
      "r440",
      "r721",
      "r722"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]",
        "terseLabel": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r132",
      "r722"
     ],
     "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",
        "verboseLabel": "Gross Carrying Amount, Finite-lived intangible assets"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Finite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r126",
      "r131"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FinitelivedIntangibleAssetsAcquired1": {
     "auth_ref": [
      "r435"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.",
        "label": "Finite-Lived Intangible Assets Acquired",
        "terseLabel": "Fair\u00a0Value"
       }
      }
     },
     "localname": "FinitelivedIntangibleAssetsAcquired1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax departments of governments entitled to levy and collect income taxes from the entity outside the entity's country of domicile.",
        "label": "Foreign Tax Authority [Member]",
        "terseLabel": "Foreign Tax Authority"
       }
      }
     },
     "localname": "ForeignCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r695"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.",
        "label": "Foreign Currency Transactions and Translations Policy [Policy Text Block]",
        "terseLabel": "Foreign currency transactions and translation"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GainLossOnSaleOfBusiness": {
     "auth_ref": [
      "r676",
      "r820"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      },
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.",
        "label": "Gain (Loss) on Disposition of Business",
        "negatedTerseLabel": "Held for sale valuation allowance",
        "terseLabel": "Held for sale valuation allowance",
        "verboseLabel": "Gain (loss) on disposal"
       }
      }
     },
     "localname": "GainLossOnSaleOfBusiness",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r286",
      "r421",
      "r723",
      "r768",
      "r797",
      "r841",
      "r848"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill",
        "periodEndLabel": "Balance at",
        "periodStartLabel": "Balance at",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r424",
      "r768"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.",
        "label": "Goodwill, Acquired During Period",
        "verboseLabel": "Acquired goodwill"
       }
      }
     },
     "localname": "GoodwillAcquiredDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetImpairment": {
     "auth_ref": [],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "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": "Goodwill and Intangible Asset Impairment",
        "verboseLabel": "Intangible asset impairment"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetImpairment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]",
        "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r136"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Goodwill and Related Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r123",
      "r129"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]",
        "terseLabel": "Goodwill and other intangible assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "auth_ref": [
      "r428"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Foreign Currency Translation Gain (Loss)",
        "verboseLabel": "Foreign currency translation"
       }
      }
     },
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss": {
     "auth_ref": [
      "r423",
      "r430",
      "r768"
     ],
     "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": "Goodwill, Impaired, Accumulated Impairment Loss",
        "verboseLabel": "Accumulated impairment losses"
       }
      }
     },
     "localname": "GoodwillImpairedAccumulatedImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r96",
      "r422",
      "r427",
      "r433",
      "r768"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Impairment Loss",
        "terseLabel": "Goodwill impairment"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Goodwill [Line Items]",
        "terseLabel": "Goodwill [Line Items]"
       }
      }
     },
     "localname": "GoodwillLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillPurchaseAccountingAdjustments": {
     "auth_ref": [
      "r211",
      "r847"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Purchase Accounting Adjustments",
        "negatedLabel": "Adjustments to prior year acquisitions"
       }
      }
     },
     "localname": "GoodwillPurchaseAccountingAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Goodwill [Roll Forward]",
        "terseLabel": "Goodwill [Roll Forward]"
       }
      }
     },
     "localname": "GoodwillRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r79",
      "r318",
      "r378",
      "r389",
      "r395",
      "r398",
      "r412",
      "r464",
      "r465",
      "r467",
      "r468",
      "r469",
      "r471",
      "r473",
      "r475",
      "r476",
      "r686",
      "r766",
      "r856"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross Profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration": {
     "auth_ref": [
      "r441"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of income or comprehensive income that includes impairment of indefinite-lived intangible asset excluding goodwill.",
        "label": "Impairment, Intangible Asset, Indefinite-Lived (Excluding Goodwill), Statement of Income or Comprehensive Income [Extensible Enumeration]",
        "terseLabel": "Impairment, Intangible Asset, Indefinite-Lived (Excluding Goodwill), Statement of Income or Comprehensive Income [Extensible Enumeration]"
       }
      }
     },
     "localname": "ImpairmentOfIntangibleAssetIndefiniteLivedExcludingGoodwillStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill": {
     "auth_ref": [
      "r820",
      "r852"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of impairment loss resulting from write-down of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit to fair value.",
        "label": "Impairment of Intangible Assets, Indefinite-Lived (Excluding Goodwill)",
        "terseLabel": "Impairment of indefinite-lived intangibles"
       }
      }
     },
     "localname": "ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r137",
      "r148"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.",
        "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]",
        "terseLabel": "Impairment of long-lived assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperations": {
     "auth_ref": [
      "r80",
      "r97",
      "r228",
      "r335",
      "r336",
      "r337",
      "r338",
      "r351",
      "r354"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of income (loss) from continuing operations attributable to the parent.",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent",
        "terseLabel": "Income from continuing operations",
        "totalLabel": "Income from continuing operations",
        "verboseLabel": "Income from continuing operations"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "auth_ref": [
      "r319",
      "r662"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic",
        "terseLabel": "Domestic"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r75",
      "r242",
      "r251",
      "r269",
      "r378",
      "r389",
      "r395",
      "r398",
      "r727",
      "r766"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": {
     "auth_ref": [
      "r319",
      "r662"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesComponentsofIncomeLossbeforeTaxesfromContinuingOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "auth_ref": [
      "r73",
      "r250",
      "r252",
      "r265",
      "r311",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r346",
      "r352",
      "r353",
      "r683",
      "r726"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.",
        "label": "Income (Loss) from Continuing Operations, Per Basic Share",
        "terseLabel": "Income from continuing operations (in dollars per share)"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "auth_ref": [
      "r73",
      "r265",
      "r268",
      "r311",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r346",
      "r352",
      "r353",
      "r354",
      "r683",
      "r726",
      "r732"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Income (Loss) from Continuing Operations, Per Diluted Share",
        "terseLabel": "Income from continuing operations (in dollars per share)"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity": {
     "auth_ref": [
      "r8",
      "r9",
      "r10",
      "r11",
      "r14",
      "r21",
      "r26",
      "r229"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.",
        "label": "Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent",
        "netLabel": "Income (loss) from discontinued operations",
        "totalLabel": "Income (loss) from discontinued operations"
       }
      }
     },
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare": {
     "auth_ref": [
      "r76",
      "r266",
      "r268",
      "r311",
      "r350",
      "r352",
      "r353",
      "r912",
      "r913"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation.",
        "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share",
        "verboseLabel": "(Loss) income from discontinued operations (in dollars per share)"
       }
      }
     },
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare": {
     "auth_ref": [
      "r232",
      "r350",
      "r352",
      "r353"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation.",
        "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share",
        "verboseLabel": "(Loss) income from discontinued operations (in dollars per share)"
       }
      }
     },
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]",
        "terseLabel": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": {
     "auth_ref": [
      "r787",
      "r790"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of disposal group.",
        "label": "Disposal Group Name [Axis]",
        "terseLabel": "Disposal Group Name [Axis]"
       }
      }
     },
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems": {
     "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": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]",
        "terseLabel": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]"
       }
      }
     },
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable": {
     "auth_ref": [
      "r1",
      "r15",
      "r16",
      "r17",
      "r18",
      "r19",
      "r20",
      "r25",
      "r27",
      "r28",
      "r29",
      "r146",
      "r147"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.",
        "label": "Disposal Groups, Including Discontinued Operations [Table]",
        "terseLabel": "Disposal Groups, Including Discontinued Operations [Table]"
       }
      }
     },
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsComponentsofIncomefromDiscontinuedOperationsbeforeTaxesIncludingtheInterestAllocatedtoDiscontinuedOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNetSalesandOperatingLossforHeldforSaleOperationsDetails",
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r442",
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r198"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]",
        "terseLabel": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]",
        "terseLabel": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxContingencyLineItems": {
     "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": "Income Tax Contingency [Line Items]",
        "terseLabel": "Income Tax Contingency [Line Items]"
       }
      }
     },
     "localname": "IncomeTaxContingencyLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxContingencyTable": {
     "auth_ref": [
      "r199",
      "r200",
      "r201",
      "r208"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about tax positions taken in the tax returns filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other income tax contingencies. Includes, but is not limited to, interest and penalties, reconciliation of unrecognized tax benefits, unrecognized tax benefits that would affect the effective tax rate, tax years that remain subject to examination by tax jurisdictions, and information about positions for which it is reasonably possible that amounts unrecognized will significantly change within 12 months.",
        "label": "Income Tax Contingency [Table]",
        "terseLabel": "Income Tax Contingency [Table]"
       }
      }
     },
     "localname": "IncomeTaxContingencyTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]",
        "terseLabel": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r320",
      "r644",
      "r646",
      "r652",
      "r658",
      "r664",
      "r669",
      "r670",
      "r671"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r321",
      "r341",
      "r342",
      "r376",
      "r642",
      "r659",
      "r666",
      "r733"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": -1.0
      },
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)",
        "totalLabel": "Provision for income taxes",
        "verboseLabel": "Provision for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails",
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Expense (Benefit), Effective Income Tax Rate Reconciliation, Amount [Abstract]",
        "terseLabel": "Effective Income Tax Rate Reconciliation, Amount [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r304",
      "r638",
      "r639",
      "r646",
      "r647",
      "r651",
      "r655"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.",
        "label": "Income Tax, Policy [Policy Text Block]",
        "terseLabel": "Income taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r889"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 6.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": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount",
        "terseLabel": "Change in valuation allowance"
       }
      }
     },
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r643"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount",
        "terseLabel": "Statutory rate"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r889"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r889"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount",
        "terseLabel": "State taxes, less federal effect"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCredits": {
     "auth_ref": [
      "r889"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "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 tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Amount",
        "negatedLabel": "Federal tax credits"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesProvisionforIncomeTaxesfromContinuingOperationsDiffersfromtheFederalStatutoryRateDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r100"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income Taxes Paid, Net",
        "terseLabel": "Payments made for income taxes, net"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesIncomeTaxesPaidNetofTaxRefundsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in operating assets and liabilities (excluding the effects of acquisitions):"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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": "Increase (Decrease) in Other Accrued Liabilities",
        "terseLabel": "Accrued expenses and other non-current liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "Increase (Decrease) in Other Operating Assets",
        "negatedLabel": "Other current assets and other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]"
       }
      }
     },
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r347",
      "r348",
      "r349",
      "r354",
      "r595"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails": {
       "order": 1.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": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements",
        "terseLabel": "Common stock options and restricted stock (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r436",
      "r439"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.",
        "label": "Indefinite-Lived Intangible Assets [Axis]",
        "terseLabel": "Indefinite-lived Intangible Assets [Axis]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r135"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.",
        "label": "Indefinite-Lived Intangible Assets (Excluding Goodwill)",
        "verboseLabel": "Gross Carrying Amount, Indefinite-lived intangible assets"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r128",
      "r135"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of the company.",
        "label": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Indefinite-lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IndefinitelivedIntangibleAssetsAcquired": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in assets, excluding financial assets and goodwill, lacking physical substance with an indefinite life, from an acquisition.",
        "label": "Indefinite-Lived Intangible Assets Acquired",
        "terseLabel": "Fair\u00a0Value"
       }
      }
     },
     "localname": "IndefinitelivedIntangibleAssetsAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r124",
      "r130"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "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": "Intangible Assets, Net (Excluding Goodwill)",
        "terseLabel": "Acquired intangibles"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestIncomeExpenseNet": {
     "auth_ref": [
      "r254"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net amount of operating interest income (expense).",
        "label": "Interest Income (Expense), Net",
        "negatedTerseLabel": "Interest expense, net",
        "terseLabel": "Interest expense, net"
       }
      }
     },
     "localname": "InterestIncomeExpenseNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestIncomeOther": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest income earned from interest bearing assets classified as other.",
        "label": "Interest Income, Other",
        "terseLabel": "Interest income"
       }
      }
     },
     "localname": "InterestIncomeOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r313",
      "r315",
      "r316"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "terseLabel": "Cash paid for interest"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtScheduleofCashPaidforInterestDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryAdjustments": {
     "auth_ref": [
      "r121",
      "r814"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of inventory reserves for last-in first-out (LIFO) and other inventory valuation methods.",
        "label": "Inventory Adjustments",
        "negatedTerseLabel": "Less reserves"
       }
      }
     },
     "localname": "InventoryAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]",
        "terseLabel": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r419"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.",
        "label": "Inventory Disclosure [Text Block]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r811"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.",
        "label": "Inventory, Finished Goods, Gross",
        "verboseLabel": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoods",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryGross": {
     "auth_ref": [
      "r814"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross 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": "Inventory, Gross",
        "totalLabel": "Gross inventory"
       }
      }
     },
     "localname": "InventoryGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r295",
      "r760",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Net",
        "terseLabel": "Inventories, net",
        "totalLabel": "Total inventories"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r282",
      "r294",
      "r360",
      "r417",
      "r418",
      "r419",
      "r719",
      "r763"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventory, Policy [Policy Text Block]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterials": {
     "auth_ref": [
      "r813"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Raw Materials, Gross",
        "verboseLabel": "Raw material"
       }
      }
     },
     "localname": "InventoryRawMaterials",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryValuationReserves": {
     "auth_ref": [
      "r122",
      "r814"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of valuation reserve for inventory.",
        "label": "Inventory Valuation Reserves",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "InventoryValuationReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesSummaryofActivitywithintheReserveforExcessObsoleteandSlowMovingInventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcess": {
     "auth_ref": [
      "r812"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.",
        "label": "Inventory, Work in Process, Gross",
        "verboseLabel": "Work-in-process"
       }
      }
     },
     "localname": "InventoryWorkInProcess",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandAndLandImprovements": {
     "auth_ref": [
      "r810"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation and depletion of real estate held for productive use and additions or improvements to real estate held for productive use, examples include, but are not limited to, walkways, driveways, fences, and parking lots. Excludes land held for sale.",
        "label": "Land and Land Improvements",
        "terseLabel": "Land and land improvements"
       }
      }
     },
     "localname": "LandAndLandImprovements",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandBuildingsAndImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Real estate held and additions or improvements to real estate held and structures used in the conduct of business.",
        "label": "Land, Buildings and Improvements [Member]",
        "terseLabel": "Land, Buildings and Improvements"
       }
      }
     },
     "localname": "LandBuildingsAndImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r710",
      "r796"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "terseLabel": "Total lease cost"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r901"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Lease, Cost [Table Text Block]",
        "terseLabel": "Lease, Cost"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]",
        "terseLabel": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeaseDescriptionLineItems": {
     "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": "Lessee, Lease, Description [Line Items]",
        "terseLabel": "Lessee, Lease, Description [Line Items]"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeaseDescriptionTable": {
     "auth_ref": [
      "r703"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about lessee's leases.",
        "label": "Lessee, Lease, Description [Table]",
        "terseLabel": "Lessee, Lease, Description [Table]"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "auth_ref": [
      "r702"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee.",
        "label": "Lessee, Leases [Policy Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeLeasesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r902"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]",
        "terseLabel": "Lessee, Operating Lease, Liability, Maturity"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r711"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r711"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five",
        "terseLabel": "After 2027"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r711"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r711"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r711"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r711"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r711"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r711"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedTerseLabel": "Less: present value discount"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "auth_ref": [
      "r900"
     ],
     "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": "Lessee, Operating Lease, Renewal Term",
        "terseLabel": "Lease renewal term"
       }
      }
     },
     "localname": "LesseeOperatingLeaseRenewalTerm",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r712"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r45",
      "r248",
      "r262",
      "r797",
      "r822",
      "r839",
      "r897"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and shareholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "Liabilities and Stockholders\u2019 Equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r53",
      "r281",
      "r318",
      "r412",
      "r464",
      "r465",
      "r467",
      "r468",
      "r469",
      "r471",
      "r473",
      "r475",
      "r476",
      "r675",
      "r677",
      "r678",
      "r686",
      "r797",
      "r856",
      "r904",
      "r905"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation": {
     "auth_ref": [
      "r0",
      "r1",
      "r24",
      "r145",
      "r278",
      "r279"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of.",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities",
        "totalLabel": "Total liabilities held for sale"
       }
      }
     },
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disposal Group, Including Discontinued Operation, Liabilities [Abstract]",
        "terseLabel": "Liabilities held for sale"
       }
      }
     },
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsScheduleofDisposalGroupDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityCommitmentFeePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.",
        "label": "Line of Credit Facility, Commitment Fee Percentage",
        "verboseLabel": "Annual commitment fee"
       }
      }
     },
     "localname": "LineOfCreditFacilityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity": {
     "auth_ref": [
      "r51"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Current Borrowing Capacity",
        "terseLabel": "Current borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityCurrentBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r51"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "terseLabel": "Maximum borrowing capacity under the revolving credit facility"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r51"
     ],
     "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": "Line of Credit Facility, Remaining Borrowing Capacity",
        "terseLabel": "Availability amount"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.",
        "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage",
        "terseLabel": "Annual commitment fee (as a percentage)"
       }
      }
     },
     "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A contractual arrangement with a lender under which borrowings can be made up to a specific amount at any point in time, and under which borrowings outstanding may be either short-term or long-term, depending upon the particulars.",
        "label": "Line of Credit [Member]",
        "terseLabel": "Revolving Credit Facility"
       }
      }
     },
     "localname": "LineOfCreditMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": {
     "auth_ref": [
      "r838"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.",
        "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccountsReceivable"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LondonInterbankOfferedRateLIBORMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.",
        "label": "London Interbank Offered Rate (LIBOR) [Member]",
        "terseLabel": "LIBOR"
       }
      }
     },
     "localname": "LondonInterbankOfferedRateLIBORMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r35",
      "r247",
      "r260",
      "r484",
      "r495",
      "r770",
      "r771"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.",
        "label": "Long-Term Debt",
        "terseLabel": "Carrying value of outstanding debt",
        "totalLabel": "Total debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails",
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Unclassified [Abstract]",
        "terseLabel": "Long-term Debt, Unclassified [Abstract]"
       }
      }
     },
     "localname": "LongTermDebtAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r290"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.",
        "label": "Long-Term Debt, Excluding Current Maturities",
        "terseLabel": "Long-term debt"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtTextBlock": {
     "auth_ref": [
      "r161"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-term debt.",
        "label": "Long-Term Debt [Text Block]",
        "verboseLabel": "Debt"
       }
      }
     },
     "localname": "LongTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/Debt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r55"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-term debt.",
        "label": "Long-Term Debt, Type [Axis]",
        "terseLabel": "Long-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "LongtermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r55",
      "r159"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Long-Term Debt, Type [Domain]",
        "terseLabel": "Long-term Debt, Type [Domain]"
       }
      }
     },
     "localname": "LongtermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/DebtScheduleofLongtermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "auth_ref": [
      "r142"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of 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, Gross",
        "verboseLabel": "Machinery and equipment"
       }
      }
     },
     "localname": "MachineryAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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]",
        "terseLabel": "Machinery and Equipment"
       }
      }
     },
     "localname": "MachineryAndEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputTypeAxis": {
     "auth_ref": [
      "r684"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of measurement input used to determine value of asset and liability.",
        "label": "Measurement Input Type [Axis]",
        "terseLabel": "Measurement Input Type [Axis]"
       }
      }
     },
     "localname": "MeasurementInputTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_MeasurementInputTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input used to determine value of asset and liability.",
        "label": "Measurement Input Type [Domain]",
        "terseLabel": "Measurement Input Type [Domain]"
       }
      }
     },
     "localname": "MeasurementInputTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MediumTermNotesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt instruments with maturities ranging from five to ten years.",
        "label": "Medium-term Notes [Member]",
        "terseLabel": "Term Loan"
       }
      }
     },
     "localname": "MediumTermNotesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MovementInValuationAllowancesAndReservesRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]",
        "terseLabel": "SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]"
       }
      }
     },
     "localname": "MovementInValuationAllowancesAndReservesRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r314"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash (used in) provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Cash Flows from Financing Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r314"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash (used in) provided by investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash Flows from Investing Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations": {
     "auth_ref": [
      "r819"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) of investing activities, excluding discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations",
        "totalLabel": "Net cash (used in) provided by investing activities of continuing operations"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r93",
      "r94",
      "r97"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Cash Flows from Operating Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations": {
     "auth_ref": [
      "r93",
      "r94",
      "r97"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, excluding discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations",
        "totalLabel": "Net cash provided by operating activities of continuing operations"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r77",
      "r97",
      "r253",
      "r267",
      "r279",
      "r299",
      "r302",
      "r307",
      "r318",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r341",
      "r342",
      "r351",
      "r378",
      "r389",
      "r395",
      "r398",
      "r412",
      "r464",
      "r465",
      "r467",
      "r468",
      "r469",
      "r471",
      "r473",
      "r475",
      "r476",
      "r683",
      "r686",
      "r766",
      "r856"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "terseLabel": "Net income",
        "totalLabel": "Net income",
        "verboseLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToReportingEntityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest [Abstract]",
        "terseLabel": "Discontinued operations:"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToReportingEntityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "terseLabel": "Recent accounting pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1": {
     "auth_ref": [
      "r101",
      "r102",
      "r103"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash consideration received for selling an asset or business through a noncash (or part noncash) transaction.",
        "label": "Noncash or Part Noncash Divestiture, Amount of Consideration Received",
        "terseLabel": "Seller note principal amount"
       }
      }
     },
     "localname": "NoncashOrPartNoncashDivestitureAmountOfConsiderationReceived1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "auth_ref": [
      "r218"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.",
        "label": "Noncompete Agreements [Member]",
        "terseLabel": "Non-compete agreements"
       }
      }
     },
     "localname": "NoncompeteAgreementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NoncurrentAssets": {
     "auth_ref": [
      "r402"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.",
        "label": "Long-Lived Assets",
        "terseLabel": "Long-lived assets"
       }
      }
     },
     "localname": "NoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NumberOfBusinessesAcquired": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of businesses acquired by the entity during the period.",
        "label": "Number of Businesses Acquired",
        "terseLabel": "Number of businesses acquired"
       }
      }
     },
     "localname": "NumberOfBusinessesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [
      "r835"
     ],
     "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": "Number of Reportable Segments",
        "terseLabel": "Number of reportable segments"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_NumberOfReportingUnits": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment.",
        "label": "Number of Reporting Units",
        "terseLabel": "Number of reporting units"
       }
      }
     },
     "localname": "NumberOfReportingUnits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r378",
      "r389",
      "r395",
      "r398",
      "r766"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "terseLabel": "Income from operations:",
        "totalLabel": "Income from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r704",
      "r796"
     ],
     "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",
        "terseLabel": "Operating lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r699"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "terseLabel": "Present value of lease liabilities",
        "totalLabel": "Total operating lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails",
      "http://www.gibraltar1.com/role/LeasesMaturityofLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r699"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 9.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "terseLabel": "Current operating lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails",
      "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r700"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes current operating lease liability.",
        "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r699"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Non-current operating lease liabilities",
        "verboseLabel": "Non-current operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
      "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r701",
      "r706"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "terseLabel": "Cash paid for amounts included in the measurement of operating liabilities"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r698"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
      "http://www.gibraltar1.com/role/LeasesAssetsandLiabilitiesofLesseeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r709",
      "r796"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "terseLabel": "Weighted-average discount rate - operating leases"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r708",
      "r796"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Weighted-average remaining lease term - operating leases"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r204"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Operating Loss Carryforwards",
        "terseLabel": "Deferred tax assets, net of operating losses"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwardsLineItems": {
     "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": "Operating Loss Carryforwards [Line Items]",
        "terseLabel": "Operating Loss Carryforwards [Line Items]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r205"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization.",
        "label": "Operating Loss Carryforwards [Table]",
        "terseLabel": "Operating Loss Carryforwards [Table]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r398"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies 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": "Operating Segments [Member]",
        "terseLabel": "Operating Segments"
       }
      }
     },
     "localname": "OperatingSegmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "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, Current",
        "verboseLabel": "Other"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r296",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current assets classified as other.",
        "label": "Other Assets, Current",
        "terseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "OtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r288"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "verboseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeTax": {
     "auth_ref": [
      "r120",
      "r309",
      "r688",
      "r693",
      "r694",
      "r724",
      "r730",
      "r815",
      "r816"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax, after reclassification adjustments of other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss), before Tax",
        "negatedTerseLabel": "Other Comprehensive Income (Loss), before Tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r60"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 1.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.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax",
        "terseLabel": "Foreign currency translation adjustment"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r72",
      "r162",
      "r300",
      "r303",
      "r309",
      "r688",
      "r693",
      "r694",
      "r724",
      "r730",
      "r815",
      "r816"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss), Net of Tax",
        "negatedTerseLabel": "Foreign currency translation adjustment",
        "totalLabel": "Other comprehensive (loss) income"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]",
        "terseLabel": "Other comprehensive income:"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]",
        "terseLabel": "Other comprehensive (loss) income:"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax": {
     "auth_ref": [
      "r64",
      "r66"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.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": "Other Comprehensive (Income) Loss, Defined Benefit Plan, after Reclassification Adjustment, after Tax",
        "negatedLabel": "Adjustment to post-retirement benefit liability, net of tax",
        "negatedTerseLabel": "Adjustment to post-retirement healthcare benefit liability, net of taxes"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax": {
     "auth_ref": [
      "r66",
      "r70",
      "r176",
      "r298"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax, of reclassification adjustment from accumulated other comprehensive (income) loss for net periodic benefit cost (credit) of defined benefit plan.",
        "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, after Tax",
        "terseLabel": "Minimum post retirement benefit plan adjustments"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossTax": {
     "auth_ref": [
      "r67",
      "r305",
      "r309",
      "r642",
      "r665",
      "r668",
      "r688",
      "r691",
      "r694",
      "r724",
      "r730"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss), Tax",
        "terseLabel": "Tax (Benefit) Expense"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Tax [Abstract]",
        "terseLabel": "Tax (Benefit) Expense"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherIncome": {
     "auth_ref": [
      "r270"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue and income classified as other.",
        "label": "Other Income",
        "negatedTerseLabel": "Other expense (income)"
       }
      }
     },
     "localname": "OtherIncome",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r56"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Noncurrent",
        "verboseLabel": "Other non-current liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "auth_ref": [
      "r97"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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": "Other Noncash Income (Expense)",
        "negatedLabel": "Other, net"
       }
      }
     },
     "localname": "OtherNoncashIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r90"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.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": "Payments for Repurchase of Common Stock",
        "negatedLabel": "Purchase of common stock at market prices"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRestructuring": {
     "auth_ref": [
      "r446",
      "r818"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation.",
        "label": "Payments for Restructuring",
        "negatedLabel": "Cash payments"
       }
      }
     },
     "localname": "PaymentsForRestructuring",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfFinancingCosts": {
     "auth_ref": [
      "r92"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for loan and debt issuance costs.",
        "label": "Payments of Financing Costs",
        "negatedLabel": "Payment of debt issuance costs"
       }
      }
     },
     "localname": "PaymentsOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r86"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedLabel": "Acquisitions, net of cash acquired"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r87"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "terseLabel": "Capital expenditures"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities": {
     "auth_ref": [
      "r34",
      "r524",
      "r525",
      "r547",
      "r785"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability, recognized in statement of financial position, for defined benefit pension and other postretirement plans, classified as current.",
        "label": "Liability, Defined Benefit Plan, Current",
        "terseLabel": "Accrued post retirement liability: Current portion"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent": {
     "auth_ref": [
      "r36",
      "r524",
      "r525",
      "r547",
      "r785"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability, recognized in statement of financial position, for defined benefit pension and other postretirement plans, classified as noncurrent.",
        "label": "Liability, Defined Benefit Plan, Noncurrent",
        "terseLabel": "Accrued post retirement liability: Long term portion"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionPlansDefinedBenefitMember": {
     "auth_ref": [
      "r170",
      "r524",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r587",
      "r588",
      "r591",
      "r785",
      "r786",
      "r790",
      "r791",
      "r792"
     ],
     "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]",
        "terseLabel": "Multiemployer and other defined benefit and pension plans"
       }
      }
     },
     "localname": "PensionPlansDefinedBenefitMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"
     ],
     "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]",
        "terseLabel": "Performance stock units (1)"
       }
      }
     },
     "localname": "PerformanceSharesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]",
        "terseLabel": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]",
        "terseLabel": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PostemploymentBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r522",
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for postemployment benefits, which may include supplemental unemployment benefits, obligations recognized for all types of benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement. Disclosure may also include discussion that an obligation for postemployment benefits is not accrued in accordance with regulation only because the amount cannot be reasonably estimated.",
        "label": "Postemployment Benefits Disclosure [Text Block]",
        "terseLabel": "Pension and Other Postretirement Benefits"
       }
      }
     },
     "localname": "PostemploymentBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefits"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PostemploymentBenefitsPeriodExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period expense related to postemployment benefits.",
        "label": "Postemployment Benefits, Period Expense",
        "terseLabel": "Total retirement plan expense"
       }
      }
     },
     "localname": "PostemploymentBenefitsPeriodExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r39",
      "r496"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r39"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r39"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.",
        "label": "Preferred Stock, Shares Outstanding",
        "terseLabel": "Preferred stock, shares outstanding (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r39",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "verboseLabel": "Preferred stock, $0.01 par value; authorized 10,000 shares; none outstanding"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromDivestitureOfBusinesses": {
     "auth_ref": [
      "r85"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period.",
        "label": "Proceeds from Divestiture of Businesses",
        "terseLabel": "Cash proceeds from sale of business"
       }
      }
     },
     "localname": "ProceedsFromDivestitureOfBusinesses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested": {
     "auth_ref": [
      "r85"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents the cash inflow during the period from the sale of a component of the entity.",
        "label": "Proceeds from Divestiture of Businesses, Net of Cash Divested",
        "terseLabel": "Net proceeds from sale of business"
       }
      }
     },
     "localname": "ProceedsFromDivestitureOfBusinessesNetOfCashDivested",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r88"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the additional capital contribution to the entity.",
        "label": "Proceeds from Issuance of Common Stock",
        "verboseLabel": "Net proceeds from issuance of common stock"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r89"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.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 Issuance of Long-Term Debt",
        "terseLabel": "Proceeds from long-term debt"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualClassifiedCurrent": {
     "auth_ref": [
      "r52",
      "r156",
      "r157"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccruedExpensesDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Product Warranty Accrual, Current",
        "terseLabel": "Accrued warranties"
       }
      }
     },
     "localname": "ProductWarrantyAccrualClassifiedCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]",
        "terseLabel": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r144"
     ],
     "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": "Long-Lived Tangible Asset [Axis]",
        "terseLabel": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r149",
      "r745",
      "r746",
      "r747"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "verboseLabel": "Property, Plant, and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r142",
      "r284"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Gross",
        "totalLabel": "Property, plant, and equipment, gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r144",
      "r263",
      "r728",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Net",
        "terseLabel": "Property, plant, and equipment, net",
        "totalLabel": "Property, plant, and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r144",
      "r745",
      "r746"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "terseLabel": "Property, plant, and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r144"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "terseLabel": "Property, Plant and Equipment",
        "verboseLabel": "Components of Property, Plant, and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PropertyPlantandEquipmentTables",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r142"
     ],
     "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": "Long-Lived Tangible Asset [Domain]",
        "terseLabel": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property, Plant and Equipment, Useful Life",
        "terseLabel": "Estimated useful lives"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r312",
      "r415"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "terseLabel": "Bad debt expense, net of recoveries"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Receivables [Abstract]",
        "terseLabel": "Receivables [Abstract]"
       }
      }
     },
     "localname": "ReceivablesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable": {
     "auth_ref": [
      "r113",
      "r114"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification, description, and amounts of all significant reconciling items in the reconciliation of a significant segment item of information disclosed (for example, liabilities) other than profit (loss), revenues, or assets, between reportable segments in total and the entity's consolidated total for that significant segment item disclosed.",
        "label": "Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table]",
        "terseLabel": "Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table]"
       }
      }
     },
     "localname": "ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r113",
      "r114"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of each significant reconciling item, other than profit (loss), revenues, or assets, in the reconciliation of totals of such items in reportable segments to the entity's corresponding consolidated amount.",
        "label": "Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table Text Block]",
        "terseLabel": "Measurements Used by Management to Assess Performance of Segments"
       }
      }
     },
     "localname": "ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r91"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "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": "Repayments of Long-Term Debt",
        "negatedLabel": "Long-term debt payments"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r106"
     ],
     "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]",
        "terseLabel": "Common stock"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Restricted stock units"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestructuringAndRelatedActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring and Related Activities [Abstract]",
        "terseLabel": "Restructuring and Related Activities [Abstract]"
       }
      }
     },
     "localname": "RestructuringAndRelatedActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r444",
      "r446",
      "r449",
      "r455",
      "r456"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for restructuring and related activities. Description of restructuring activities such as exit and disposal activities, include facts and circumstances leading to the plan, the expected plan completion date, the major types of costs associated with the plan activities, total expected costs, the accrual balance at the end of the period, and the periods over which the remaining accrual will be settled.",
        "label": "Restructuring and Related Activities Disclosure [Text Block]",
        "terseLabel": "Exit Activity Costs and Asset Impairments"
       }
      }
     },
     "localname": "RestructuringAndRelatedActivitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestructuringCharges": {
     "auth_ref": [
      "r96",
      "r450",
      "r452",
      "r854"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.",
        "label": "Restructuring Charges",
        "verboseLabel": "Restructuring charges"
       }
      }
     },
     "localname": "RestructuringCharges",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestructuringCostAndReserveAxis": {
     "auth_ref": [
      "r445",
      "r446",
      "r452",
      "r453"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of restructuring cost.",
        "label": "Restructuring Type [Axis]",
        "terseLabel": "Restructuring Type [Axis]"
       }
      }
     },
     "localname": "RestructuringCostAndReserveAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringCostAndReserveLineItems": {
     "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": "Restructuring Cost and Reserve [Line Items]",
        "terseLabel": "Restructuring Cost and Reserve [Line Items]"
       }
      }
     },
     "localname": "RestructuringCostAndReserveLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringReserve": {
     "auth_ref": [
      "r446",
      "r451"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized plan.",
        "label": "Restructuring Reserve",
        "periodEndLabel": "Balance as of",
        "periodStartLabel": "Balance as of"
       }
      }
     },
     "localname": "RestructuringReserve",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestructuringReserveRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Restructuring Reserve [Roll Forward]",
        "terseLabel": "Restructuring Reserve [Roll Forward]"
       }
      }
     },
     "localname": "RestructuringReserveRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsReconcilesOfLiabilityForExitActivityCostsRelatingToFacilityConsolidationEffortsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringSettlementAndImpairmentProvisions": {
     "auth_ref": [
      "r82"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of restructuring charges, remediation cost, and asset impairment loss.",
        "label": "Restructuring, Settlement and Impairment Provisions",
        "terseLabel": "Asset impairment charges"
       }
      }
     },
     "localname": "RestructuringSettlementAndImpairmentProvisions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r42",
      "r167",
      "r261",
      "r738",
      "r740",
      "r797"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r276",
      "r329",
      "r330",
      "r331",
      "r334",
      "r340",
      "r342",
      "r413",
      "r631",
      "r632",
      "r633",
      "r656",
      "r657",
      "r681",
      "r735",
      "r737"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Retained Earnings"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanTypeAxis": {
     "auth_ref": [
      "r170",
      "r171",
      "r524",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r587",
      "r588",
      "r589",
      "r591",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r791",
      "r792"
     ],
     "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]",
        "terseLabel": "Retirement Plan Type [Axis]"
       }
      }
     },
     "localname": "RetirementPlanTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanTypeDomain": {
     "auth_ref": [
      "r170",
      "r171",
      "r524",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r587",
      "r588",
      "r589",
      "r591",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r791",
      "r792"
     ],
     "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]",
        "terseLabel": "Retirement Plan Type [Domain]"
       }
      }
     },
     "localname": "RetirementPlanTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsAmountsRecognizedintheConsolidatedFinancialStatementsDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsChangesintheAccumulatedPostretirementBenefitObligationDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsComponentsofNetPeriodicPostretirementBenefitCostDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsExpectedBenefitPaymentsfromthePlanDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails",
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]",
        "terseLabel": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r521",
      "r764"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue from Contract with Customer [Policy Text Block]",
        "terseLabel": "Revenue recognition"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r508",
      "r509",
      "r520",
      "r521"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r507"
     ],
     "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": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period",
        "terseLabel": "Remaining performance obligation expected timing of satisfaction"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/RevenueNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r308",
      "r318",
      "r369",
      "r370",
      "r388",
      "r393",
      "r394",
      "r400",
      "r401",
      "r404",
      "r412",
      "r464",
      "r465",
      "r467",
      "r468",
      "r469",
      "r471",
      "r473",
      "r475",
      "r476",
      "r686",
      "r727",
      "r856"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).",
        "label": "Revenues",
        "terseLabel": "Net sales:"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": {
     "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": "Revenues from External Customers and Long-Lived Assets [Line Items]",
        "terseLabel": "Revenues from External Customers and Long-Lived Assets [Line Items]"
       }
      }
     },
     "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.",
        "label": "Revolving Credit Facility [Member]",
        "terseLabel": "Revolving Credit Facility"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails",
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r707",
      "r796"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "terseLabel": "Right-of-use assets obtained in exchange for new lease liabilities"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SaleLeasebackTransactionLineItems": {
     "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": "Sale Leaseback Transaction [Line Items]",
        "terseLabel": "Sale Leaseback Transaction [Line Items]"
       }
      }
     },
     "localname": "SaleLeasebackTransactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SaleLeasebackTransactionTable": {
     "auth_ref": [
      "r275",
      "r713"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A summary of the elements of a transaction involving the entity's sale of property to another party and the lease of the property back to the entity.",
        "label": "Sale Leaseback Transaction [Table]",
        "terseLabel": "Sale Leaseback Transaction [Table]"
       }
      }
     },
     "localname": "SaleLeasebackTransactionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r404",
      "r834"
     ],
     "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]",
        "terseLabel": "Net sales"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": {
     "auth_ref": [
      "r59"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule itemizing specific types of trade accounts and notes receivable, and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.",
        "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]",
        "terseLabel": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]"
       }
      }
     },
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesSummaryofActivityRecordedwithintheAllowanceforDoubtfulAccountsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "auth_ref": [
      "r59"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.",
        "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]",
        "terseLabel": "Schedule of Accounts Receivable"
       }
      }
     },
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccountsReceivableTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of accrued liabilities.",
        "label": "Schedule of Accrued Liabilities [Table Text Block]",
        "verboseLabel": "Accrued Expenses"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccruedExpensesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "auth_ref": [
      "r69",
      "r898",
      "r899"
     ],
     "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]",
        "terseLabel": "Schedule of Components of Accumulated Other Comprehensive Income (Loss)"
       }
      }
     },
     "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": {
     "auth_ref": [
      "r126"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.",
        "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]",
        "verboseLabel": "Schedule of Acquired Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock": {
     "auth_ref": [
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amounts that are recognized in the balance sheet (or statement of financial position) for pension plans and/or other employee benefit plans, showing separately the assets and current and noncurrent liabilities (if applicable) recognized.",
        "label": "Schedule of Amounts Recognized in Balance Sheet [Table Text Block]",
        "terseLabel": "Amounts Recognized in the Consolidated Financial Statements"
       }
      }
     },
     "localname": "ScheduleOfAmountsRecognizedInBalanceSheetTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": {
     "auth_ref": [
      "r106"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.",
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]",
        "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]"
       }
      }
     },
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "auth_ref": [
      "r106"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.",
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]",
        "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share"
       }
      }
     },
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r213",
      "r214",
      "r672"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAllocationofthePurchasePriceConsiderationoftheFairValueofAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": {
     "auth_ref": [
      "r213",
      "r214"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]",
        "terseLabel": "Schedule of Allocation of the Purchase Price Consideration of the Fair Value of Assets Acquired and Liabilities Assumed"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r207"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]",
        "terseLabel": "Summary of Provision for Income Taxes for Continuing Operations"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock": {
     "auth_ref": [
      "r177"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the costs related to the various types of retirement plans including defined benefit pension plan cost, defined contribution plan cost, other postretirement benefit plan cost, and net periodic benefit cost.",
        "label": "Schedule of Costs of Retirement Plans [Table Text Block]",
        "terseLabel": "Schedule of Total Expense for All Retirement Plans"
       }
      }
     },
     "localname": "ScheduleOfCostsOfRetirementPlansTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock": {
     "auth_ref": [
      "r117",
      "r840"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allowance for credit loss of financing receivable, classified as current.",
        "label": "Financing Receivable, Current, Allowance for Credit Loss [Table Text Block]",
        "terseLabel": "Summary Of Activity Recorded Within The Allowance For Doubtful Accounts"
       }
      }
     },
     "localname": "ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.",
        "label": "Schedule of Debt [Table Text Block]",
        "terseLabel": "Schedule of Debt"
       }
      }
     },
     "localname": "ScheduleOfDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]",
        "terseLabel": "Deferred Tax Liabilities (Assets)"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r177",
      "r178",
      "r179",
      "r180",
      "r181"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosures about an individual defined benefit pension plan or an other postretirement defined benefit plan. It may be appropriate to group certain similar plans. Also includes schedule for fair value of plan assets by major categories of plan assets by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets or liabilities (Level 1), Significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table]",
        "terseLabel": "Schedule of Defined Benefit Plans Disclosures [Table]"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsScheduleofTotalExpenseforAllRetirementPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock": {
     "auth_ref": [
      "r1",
      "r15",
      "r16",
      "r17",
      "r18",
      "r19",
      "r20",
      "r25",
      "r27",
      "r28",
      "r29",
      "r146",
      "r147"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.",
        "label": "Disposal Groups, Including Discontinued Operations [Table Text Block]",
        "terseLabel": "Schedule of Discontinued Operations"
       }
      }
     },
     "localname": "ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DiscontinuedOperationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r833"
     ],
     "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]",
        "terseLabel": "Schedule of Computation of Basic and Diluted Earnings per Share"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EarningsperShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r197"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "terseLabel": "Provision for Income Taxes from Continuing Operations Differs from the Federal Statutory Rate"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock": {
     "auth_ref": [
      "r174"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of benefits expected to be paid by pension plans and/or other employee benefit plans in each of the next five fiscal years and in the aggregate for the five fiscal years thereafter.",
        "label": "Schedule of Expected Benefit Payments [Table Text Block]",
        "verboseLabel": "Expected Benefit Payments from the Plan"
       }
      }
     },
     "localname": "ScheduleOfExpectedBenefitPaymentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfExtinguishmentOfDebtTable": {
     "auth_ref": [
      "r160"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to debt extinguished, including the amount of gain (loss) on the debt extinguished, the income tax effect on the gain (loss), and the amount of gain (loss), net of the related income tax.",
        "label": "Schedule of Extinguishment of Debt [Table]",
        "terseLabel": "Schedule of Extinguishment of Debt [Table]"
       }
      }
     },
     "localname": "ScheduleOfExtinguishmentOfDebtTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/FairValueMeasurementsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": {
     "auth_ref": [
      "r126"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period.",
        "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]",
        "terseLabel": "Schedule of Acquired Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r126",
      "r131",
      "r721"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "auth_ref": [
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r768"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.",
        "label": "Schedule of Goodwill [Table]",
        "terseLabel": "Schedule of Goodwill [Table]"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r768",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r846",
      "r847",
      "r848",
      "r849",
      "r850",
      "r851"
     ],
     "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]",
        "verboseLabel": "Schedule of Changes in Carrying Amount of Goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": {
     "auth_ref": [
      "r823"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions.",
        "label": "Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]",
        "terseLabel": "Components of Income (Loss) Before Taxes from Continuing Operations"
       }
      }
     },
     "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r32",
      "r46",
      "r47",
      "r48"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "terseLabel": "Schedule of Inventories"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNetBenefitCostsTableTextBlock": {
     "auth_ref": [
      "r175"
     ],
     "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]",
        "terseLabel": "Schedule of Net Periodic Pension and Other Post-Retirement Benefit Costs"
       }
      }
     },
     "localname": "ScheduleOfNetBenefitCostsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNetFundedStatusTableTextBlock": {
     "auth_ref": [
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of net funded status of pension plans and/or other employee benefit plans.",
        "label": "Schedule of Net Funded Status [Table Text Block]",
        "verboseLabel": "Changes in the Accumulated Postretirement Benefit Obligation"
       }
      }
     },
     "localname": "ScheduleOfNetFundedStatusTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/PensionandOtherPostretirementBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": {
     "auth_ref": [
      "r445",
      "r446",
      "r447",
      "r448",
      "r452",
      "r453",
      "r454"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Table presenting the description of the restructuring costs, such as the expected cost; the costs incurred during the period; the cumulative costs incurred as of the balance sheet date; the income statement caption within which the restructuring charges recognized for the period are included; and the amount of and periodic changes to an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost by type of restructuring.",
        "label": "Schedule of Restructuring and Related Costs [Table]",
        "terseLabel": "Schedule of Restructuring and Related Costs [Table]"
       }
      }
     },
     "localname": "ScheduleOfRestructuringAndRelatedCostsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock": {
     "auth_ref": [
      "r151",
      "r152",
      "r153"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of costs incurred for restructuring including, but not limited to, exit and disposal activities, remediation, implementation, integration, asset impairment, and charges against earnings from the write-down of assets.",
        "label": "Restructuring and Related Costs [Table Text Block]",
        "verboseLabel": "Summary of Exit Activity Costs and Asset Impairments Recorded in the Consolidated Statements of Operations"
       }
      }
     },
     "localname": "ScheduleOfRestructuringAndRelatedCostsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock": {
     "auth_ref": [
      "r150",
      "r154"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in the period.",
        "label": "Schedule of Restructuring Reserve by Type of Cost [Table Text Block]",
        "terseLabel": "Reconciliation of Liability for Exit Activity Costs Relating to Facility Consolidation Efforts"
       }
      }
     },
     "localname": "ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock": {
     "auth_ref": [
      "r78",
      "r116"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information concerning material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries.",
        "label": "Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]",
        "terseLabel": "Net Sales by Region or Origin and Long-Lived Assets by Region of Domicile"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": {
     "auth_ref": [
      "r74",
      "r116"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries.",
        "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]",
        "terseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyRegionorOriginandLongLivedAssetsbyRegionofDomicileDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r592",
      "r594",
      "r597",
      "r598",
      "r599",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r621",
      "r622",
      "r623",
      "r624",
      "r625"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]",
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable": {
     "auth_ref": [
      "r193"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Details comprising a table providing supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range [Table]",
        "terseLabel": "Share-based Payment Arrangement, Option, Exercise Price Range [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r183",
      "r187",
      "r189"
     ],
     "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]",
        "terseLabel": "Summary of Stock Options Transactions"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.",
        "label": "Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]",
        "terseLabel": "Summary of Information About Restricted Stock Units and Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r131"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.",
        "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]",
        "terseLabel": "Schedule of Amortization Expense"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentContinuingOperationsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component of an entity expected to operate in the foreseeable future.",
        "label": "Continuing Operations [Member]",
        "terseLabel": "Continuing Operations"
       }
      }
     },
     "localname": "SegmentContinuingOperationsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentDiscontinuedOperationsMember": {
     "auth_ref": [
      "r2",
      "r5",
      "r6",
      "r7"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component or group of components disposed of or classified as held-for-sale and representing a strategic shift that has or will have a major effect on operations and financial results. Includes a business or nonprofit activity on acquisition classified as held-for-sale.",
        "label": "Discontinued Operations [Member]",
        "terseLabel": "Discontinued Operations"
       }
      }
     },
     "localname": "SegmentDiscontinuedOperationsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r366",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r398",
      "r404",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r448",
      "r454",
      "r768",
      "r914"
     ],
     "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]",
        "terseLabel": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentOperatingActivitiesDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operations of an entity including continuing and discontinued operations.",
        "label": "Operating Activities [Domain]",
        "terseLabel": "Operating Activities [Domain]"
       }
      }
     },
     "localname": "SegmentOperatingActivitiesDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]",
        "terseLabel": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r366",
      "r367",
      "r368",
      "r378",
      "r381",
      "r392",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r403",
      "r404",
      "r405"
     ],
     "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]",
        "terseLabel": "Segment Information"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationRevenueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting Information, Revenue for Reportable Segment [Abstract]",
        "terseLabel": "Segment Reporting Information, Revenue for Reportable Segment [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingInformationRevenueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingOtherSignificantReconcilingItemLineItems": {
     "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": "Segment Reporting, Other Significant Reconciling Item [Line Items]",
        "terseLabel": "Segment Reporting, Other Significant Reconciling Item [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingOtherSignificantReconcilingItemLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingPolicyPolicyTextBlock": {
     "auth_ref": [
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r401"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for segment reporting.",
        "label": "Segment Reporting, Policy [Policy Text Block]",
        "terseLabel": "Segment Reporting"
       }
      }
     },
     "localname": "SegmentReportingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, General and Administrative Expense",
        "terseLabel": "Selling, general, and administrative expense"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.",
        "label": "Selling, General and Administrative Expenses [Member]",
        "terseLabel": "SG&amp;A",
        "verboseLabel": "Selling, general and administrative costs"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsAcquisitionRelatedCostsDetails",
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      },
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "terseLabel": "Stock compensation expense",
        "totalLabel": "Total stock compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Noncash Expense [Abstract]",
        "terseLabel": "Share-based Payment Arrangement, Noncash Expense [Abstract]"
       }
      }
     },
     "localname": "ShareBasedCompensationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r794"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period",
        "terseLabel": "Typical vesting period, in years"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r614"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Forfeited (in shares)",
        "terseLabel": "Forfeited in period (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r614"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "terseLabel": "Forfeited (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r612"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "netLabel": "Shares awarded (in shares)",
        "terseLabel": "Number\u00a0of Awards (in shares)",
        "verboseLabel": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r612"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "netLabel": "Weighted Average Grant\u00a0Date Fair Value (in USD per share)",
        "terseLabel": "Granted (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r609",
      "r610"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Balance at end of period (in shares)",
        "periodStartLabel": "Balance at beginning of period (in shares)",
        "verboseLabel": "Performance stock units outstanding (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "terseLabel": "Restricted Stock Units / Restricted Stock (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r609",
      "r610"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Balance at end of period (in USD per share)",
        "periodStartLabel": "Balance at beginning of period (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]",
        "terseLabel": "Weighted Average Grant Date Fair Value (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid": {
     "auth_ref": [
      "r616"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid to settle liability for award under share-based payment arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Share-Based Liabilities Paid",
        "terseLabel": "Restricted stock units credited"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r613"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Vested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": {
     "auth_ref": [
      "r616"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value",
        "terseLabel": "Grant date fair value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r613"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Vested (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofCompensationExpenseConnectionwithAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted": {
     "auth_ref": [
      "r186"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net number of non-option equity instruments granted to participants.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Granted",
        "terseLabel": "Restricted stock units credited (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber": {
     "auth_ref": [
      "r184",
      "r185"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of equity instruments other than options outstanding, including both vested and non-vested instruments.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Outstanding, Number",
        "terseLabel": "Restricted stock units balance, vested and unvested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r795"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized",
        "terseLabel": "Number of shares authorized"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r193"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Number of shares available for issuance under the Plan"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r603"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number",
        "terseLabel": "Options Exercisable"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r603"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r616"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "terseLabel": "Aggregate intrinsic value of options exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r607"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures in Period",
        "negatedLabel": "Forfeited (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [
      "r605"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross",
        "terseLabel": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock": {
     "auth_ref": [
      "r188"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the weighted-average grant-date fair value of equity options or other equity instruments granted during the year.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value [Table Text Block]",
        "terseLabel": "Schedule of Number of Awards and Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r193"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value",
        "terseLabel": "Aggregate Intrinsic\u00a0Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r601",
      "r602"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Ending balance (in shares)",
        "periodStartLabel": "Beginning balance (in shares)",
        "terseLabel": "Options Outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward]",
        "terseLabel": "Options (in shares):"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r601",
      "r602"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Ending balance (in dollars per share)",
        "periodStartLabel": "Begininng balance (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]",
        "terseLabel": "Weighted Average Exercise Price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock": {
     "auth_ref": [
      "r189"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of number, weighted-average exercise price or conversion ratio, aggregate intrinsic value, and weighted-average remaining contractual term for outstanding and exercisable options that are fully vested and expected to vest. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable [Table Text Block]",
        "terseLabel": "Summary of Ranges of Outstanding and Exercisable Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r597",
      "r598",
      "r599",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r621",
      "r622",
      "r623",
      "r624",
      "r625"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]",
        "terseLabel": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationAggregateIntrinsicValueofOptionsExercisedandAggregateFairValueofRestrictedStockUnitsandRestrictedSharesthatVestedDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationScheduleofNumberofAwardsandWeightedAverageGrantDateFairValueDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofInformationaboutRestrictedStockUnitsandWeightedAverageGrantDateFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r606"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Exercised (in dollars per share)",
        "verboseLabel": "Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r607"
     ],
     "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": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price",
        "terseLabel": "Forfeited (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r600",
      "r619",
      "r620",
      "r621",
      "r622",
      "r625",
      "r634",
      "r635"
     ],
     "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]",
        "terseLabel": "Equity-based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": {
     "auth_ref": [
      "r191"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by range of option prices pertaining to options granted.",
        "label": "Exercise Price Range [Axis]",
        "terseLabel": "Exercise Price Range [Axis]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": {
     "auth_ref": [
      "r192"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices.",
        "label": "Exercise Price Range [Domain]",
        "terseLabel": "Exercise Price Range [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items]",
        "terseLabel": "Share-based Payment Arrangement, Option, Exercise Price Range [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit": {
     "auth_ref": [
      "r192"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit",
        "terseLabel": "Exercise Price Range, Lower Range Limit"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r190"
     ],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Weighted Average Remaining Contractual Life (in\u00a0years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofRangesofOutstandingandExercisableOptionsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharesIssued": {
     "auth_ref": [
      "r162"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury.",
        "label": "Shares, Issued",
        "periodEndLabel": "Balance, shares",
        "periodStartLabel": "Balance, shares"
       }
      }
     },
     "localname": "SharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r705",
      "r796"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.",
        "label": "Short-Term Lease, Cost",
        "terseLabel": "Short-term lease cost"
       }
      }
     },
     "localname": "ShortTermLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/LeasesScheduleofLeaseCostandAssumptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r105",
      "r317"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "Summary Of Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StandbyLettersOfCreditMember": {
     "auth_ref": [
      "r158",
      "r227",
      "r271",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "An irrevocable undertaking (typically by a financial institution) to guarantee payment of a specified financial obligation.",
        "label": "Standby Letters of Credit [Member]",
        "terseLabel": "Standby Letters of Credit"
       }
      }
     },
     "localname": "StandbyLettersOfCreditMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity.",
        "label": "State and Local Jurisdiction [Member]",
        "terseLabel": "State"
       }
      }
     },
     "localname": "StateAndLocalJurisdictionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r277",
      "r366",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r398",
      "r404",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r443",
      "r448",
      "r454",
      "r768",
      "r914"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]",
        "terseLabel": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsNarrativeDetails",
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsScheduleOfAssetImpairmentChargesRelatedToRestructuringActivitiesDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofChangesinCarryingAmountofGoodwillDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails",
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r58",
      "r162",
      "r276",
      "r305",
      "r306",
      "r307",
      "r329",
      "r330",
      "r331",
      "r334",
      "r340",
      "r342",
      "r361",
      "r413",
      "r497",
      "r631",
      "r632",
      "r633",
      "r656",
      "r657",
      "r681",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r694",
      "r715",
      "r735",
      "r736",
      "r737"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccumulatedOtherComprehensiveIncomeLossDetails",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/EquityBasedCompensationCashPaidtoSettleLiabilityAwardsDetails",
      "http://www.gibraltar1.com/role/EquityBasedCompensationNarrativeDetails",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails",
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]",
        "terseLabel": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]",
        "terseLabel": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]",
        "terseLabel": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]",
        "terseLabel": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOperatingActivitiesSegmentAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by continuing and discontinuing operations.",
        "label": "Operating Activities [Axis]",
        "terseLabel": "Operating Activities [Axis]"
       }
      }
     },
     "localname": "StatementOperatingActivitiesSegmentAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesBenefitofProvisionforIncomeTaxesDetails",
      "http://www.gibraltar1.com/role/SegmentInformationMeasurementsUsedbyManagementtoAssessPerformanceofSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r329",
      "r330",
      "r331",
      "r361",
      "r720"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]",
        "terseLabel": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesOther": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of stock issued attributable to transactions classified as other.",
        "label": "Stock Issued During Period, Shares, Other",
        "terseLabel": "Issuance of restricted stock, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r39",
      "r40",
      "r162",
      "r167",
      "r606"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Exercised (in shares)",
        "terseLabel": "Stock options exercised, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/EquityBasedCompensationSummaryofStockOptionTransactionsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r58",
      "r162",
      "r167"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "terseLabel": "Stock options exercised"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchasedDuringPeriodShares": {
     "auth_ref": [
      "r39",
      "r40",
      "r162",
      "r167"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.",
        "label": "Stock Repurchased During Period, Shares",
        "negatedTerseLabel": "Common stock repurchased under stock repurchase program (in shares)"
       }
      }
     },
     "localname": "StockRepurchasedDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedDuringPeriodValue": {
     "auth_ref": [
      "r39",
      "r40",
      "r162",
      "r167"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.",
        "label": "Stock Repurchased During Period, Value",
        "negatedTerseLabel": "Common stock repurchased under stock repurchase program"
       }
      }
     },
     "localname": "StockRepurchasedDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r40",
      "r43",
      "r44",
      "r119",
      "r797",
      "r822",
      "r839",
      "r897"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total stockholders\u2019 equity",
        "verboseLabel": "Cumulative effect of new accounting principle in period of adoption"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets",
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.gibraltar1.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders\u2019 equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SummaryOfValuationAllowanceTextBlock": {
     "auth_ref": [
      "r202"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of valuation allowances to reduce deferred tax assets to net realizable value, including identification of the deferred tax asset more likely than not will not be fully realized and the corresponding amount of the valuation allowance.",
        "label": "Summary of Valuation Allowance [Table Text Block]",
        "terseLabel": "Summary of Valuation Allowance"
       }
      }
     },
     "localname": "SummaryOfValuationAllowanceTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TechnologyEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment used in the creation, maintenance and utilization of information systems which include computers and peripherals.",
        "label": "Technology Equipment [Member]",
        "terseLabel": "Technology"
       }
      }
     },
     "localname": "TechnologyEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceAxis": {
     "auth_ref": [
      "r781",
      "r861"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by timing of transfer of good or service to customer.",
        "label": "Timing of Transfer of Good or Service [Axis]",
        "terseLabel": "Timing of Transfer of Good or Service [Axis]"
       }
      }
     },
     "localname": "TimingOfTransferOfGoodOrServiceAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceDomain": {
     "auth_ref": [
      "r781",
      "r861"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time.",
        "label": "Timing of Transfer of Good or Service [Domain]",
        "terseLabel": "Timing of Transfer of Good or Service [Domain]"
       }
      }
     },
     "localname": "TimingOfTransferOfGoodOrServiceDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradeAndOtherAccountsReceivablePolicy": {
     "auth_ref": [
      "r272",
      "r273",
      "r274",
      "r408",
      "r409",
      "r411"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for accounts receivable.",
        "label": "Accounts Receivable [Policy Text Block]",
        "terseLabel": "Accounts receivable and allowance for doubtful accounts and contract assets"
       }
      }
     },
     "localname": "TradeAndOtherAccountsReceivablePolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TrademarksMember": {
     "auth_ref": [
      "r217"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style.",
        "label": "Trademarks [Member]",
        "terseLabel": "Trademarks"
       }
      }
     },
     "localname": "TrademarksMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AcquisitionsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsNarrativeDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails",
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofImpairmentChargesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredAtPointInTimeMember": {
     "auth_ref": [
      "r781"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract with customer in which good or service is transferred at point in time.",
        "label": "Transferred at Point in Time [Member]",
        "terseLabel": "Point in Time"
       }
      }
     },
     "localname": "TransferredAtPointInTimeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredOverTimeMember": {
     "auth_ref": [
      "r781"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract with customer in which good or service is transferred over time.",
        "label": "Transferred over Time [Member]",
        "terseLabel": "Over Time"
       }
      }
     },
     "localname": "TransferredOverTimeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SegmentInformationNetSalesbyContractTypeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r57",
      "r168"
     ],
     "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]",
        "terseLabel": "Treasury Stock"
       }
      }
     },
     "localname": "TreasuryStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r57",
      "r168"
     ],
     "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",
        "terseLabel": "Treasury stock, shares (in shares)"
       }
      }
     },
     "localname": "TreasuryStockShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r57",
      "r168",
      "r169"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets": {
       "order": 6.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": "Treasury Stock, Value",
        "negatedLabel": "Cost of 3,199 and 1,107 common shares held in treasury in 2022 and 2021"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TypeOfRestructuringDomain": {
     "auth_ref": [
      "r445",
      "r446",
      "r452",
      "r453"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the types of restructuring costs.",
        "label": "Type of Restructuring [Domain]",
        "terseLabel": "Type of Restructuring [Domain]"
       }
      }
     },
     "localname": "TypeOfRestructuringDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ExitActivityCostsandAssetImpairmentsSummaryOfExitActivityCostsAndAssetImpairmentsRecordedintheConsolidatedStatementsofOperationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnbilledContractsReceivable": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/AccountsReceivableDetails": {
       "order": 2.0,
       "parentTag": "rock_ContractsReceivableGrossCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unbilled amounts due for services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the entity and, at a minimum, one other party. An example would be amounts associated with contracts or programs where the recognized revenue for performance thereunder exceeds the amounts billed under the terms thereof as of the date of the balance sheet.",
        "label": "Unbilled Contracts Receivable",
        "terseLabel": "Costs in excess of billings"
       }
      }
     },
     "localname": "UnbilledContractsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/AccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnpatentedTechnologyMember": {
     "auth_ref": [
      "r220"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Technology-based innovations or scientific advances that have not been patented.",
        "label": "Unpatented Technology [Member]",
        "terseLabel": "Unpatented technology and patents"
       }
      }
     },
     "localname": "UnpatentedTechnologyMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/GoodwillandRelatedIntangibleAssetsScheduleofAcquiredIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense": {
     "auth_ref": [
      "r645"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.",
        "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense",
        "terseLabel": "Interest and penalties recognized"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r110",
      "r111",
      "r112",
      "r362",
      "r363",
      "r364",
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "terseLabel": "Use of estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember": {
     "auth_ref": [
      "r824",
      "r825",
      "r826",
      "r827",
      "r828"
     ],
     "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]",
        "terseLabel": "Deferred Tax Valuation Allowance"
       }
      }
     },
     "localname": "ValuationAllowanceOfDeferredTaxAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesAdjustments": {
     "auth_ref": [
      "r829"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in valuation and qualifying accounts and reserves from adjustment.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Increase (Decrease) Adjustment",
        "terseLabel": "Reclassification from discontinued operations upon sale of industrial group"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesBalance": {
     "auth_ref": [
      "r323",
      "r328"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Amount",
        "periodEndLabel": "Balance as of December\u00a031",
        "periodStartLabel": "Balance as of January\u00a01"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesBalance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense": {
     "auth_ref": [
      "r326"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in valuation and qualifying accounts and reserves from charge to cost and expense.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Cost and Expense",
        "terseLabel": "Cost charged to the tax provision"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesChargedToCostAndExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDeductions": {
     "auth_ref": [
      "r327"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Deduction",
        "negatedNetLabel": "Reductions"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDeductions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDomain": {
     "auth_ref": [
      "r323",
      "r324",
      "r325",
      "r327",
      "r328"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]",
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesTypeAxis": {
     "auth_ref": [
      "r323",
      "r324",
      "r325",
      "r327",
      "r328"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]",
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/IncomeTaxesSummaryofValuationAllowanceDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.",
        "label": "Variable Rate [Domain]",
        "terseLabel": "Variable Rate [Domain]"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r345",
      "r354"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails": {
       "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 Number of Shares Outstanding, Diluted",
        "terseLabel": "Weighted average shares outstanding \u2013 Diluted (in shares)",
        "totalLabel": "Weighted average shares and conversions (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r344",
      "r354"
     ],
     "calculation": {
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails": {
       "order": 2.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 Number of Shares Outstanding, Basic",
        "terseLabel": "Weighted average shares outstanding \u2013 Basic (in shares)",
        "verboseLabel": "Weighted average shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.gibraltar1.com/role/ConsolidatedStatementsofOperations",
      "http://www.gibraltar1.com/role/EarningsperShareScheduleofComputationofBasicandDilutedEarningsperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 10
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=d3e1107-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721533-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721525-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4304-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4313-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4332-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org/topic&trid=2122369",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=d3e1012-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8475-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=d3e1060-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=109237563&loc=d3e33775-111570",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.BB)",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=d3e1063-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "https://asc.fasb.org/topic&trid=2144416",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2510-110228",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2599-110228",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2473-110228",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=SL51724579-110230",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "https://asc.fasb.org/topic&trid=2155823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.P.3)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140864-122747",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.P.4)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(2))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "https://asc.fasb.org/topic&trid=2144648",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907644&loc=d3e11281-110244",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12524-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907907&loc=d3e12803-110250",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=SL6230698-112601",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1474-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=7516071&loc=d3e13374-112631",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "https://asc.fasb.org/topic&trid=2208564",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21506-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21521-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21538-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721659-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=d3e1703-114919",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721663-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2439-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5047-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721665-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721491-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721671-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "217",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126976462&loc=d3e36027-109320",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Subparagraph": "(a)-(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6909625&loc=d3e227-128457",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e961-128460",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e1043-128460",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6578-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6613-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "740",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966508&loc=d3e9972-128506",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "740",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966508&loc=d3e9979-128506",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "https://asc.fasb.org/topic&trid=2303972",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116873149&loc=d3e923-111674",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4613673-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.E)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120398118&loc=d3e355146-122828",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(20))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.10)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.15(a))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(11))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04.4)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=66023616&loc=SL35737432-115832",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5212-111524",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5093-111524",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "840",
   "URI": "https://asc.fasb.org/extlink&oid=123416376&loc=d3e50796-112755",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721677-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(15))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(16))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL34724391-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721494-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=26872618&loc=d3e7436-122677",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/subtopic&trid=2122178",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18726-107790",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column B))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(1)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(2)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column D))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column E))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21728-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1707-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1757-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1500-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1278-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org/topic&trid=2144383",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(24))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e543-108305",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8657-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8844-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8864-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8864-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8864-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8864-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8864-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8864-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8981-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721494-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "https://asc.fasb.org/topic&trid=2134510",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e4975-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "340",
   "URI": "https://asc.fasb.org/extlink&oid=126905575&loc=SL49131252-203054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.3)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140864-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.P.4(b)(2))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(1))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(2))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(e))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "420",
   "URI": "https://asc.fasb.org/topic&trid=2175745",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12021-110248",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721494-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130561-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130564-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410195&loc=d3e80090-111668",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "712",
   "URI": "https://asc.fasb.org/topic&trid=2197446",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=d3e1703-114919",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=d3e1731-114919",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=SL108413299-114919",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(10)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(8)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(9)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(8)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(j)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(l)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(q)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2919-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=6414203&loc=d3e39716-114964",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=29639808&loc=d3e29008-114946",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450691-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126962052&loc=d3e4991-113900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r597": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r598": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r599": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721501-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r600": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r601": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r602": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r606": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r607": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r608": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r609": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a),(b),(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r610": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r611": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r612": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r613": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r614": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r615": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r616": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r621": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r628": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r629": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(i),(j),(k)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(l)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(a)",
   "Topic": "720",
   "URI": "https://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(b)",
   "Topic": "720",
   "URI": "https://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(i-k)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r654": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r655": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r656": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r657": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r658": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r659": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r663": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r664": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r665": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e39076-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r667": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r668": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r669": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e640-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r670": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r671": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r672": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r673": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r674": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r675": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4582445-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r677": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r678": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r679": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r680": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r681": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r682": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r683": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r684": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r685": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r686": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r687": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r690": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r691": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r692": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r693": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r694": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r695": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "https://asc.fasb.org/topic&trid=2175825",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r696": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r697": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r698": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r699": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721503-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e689-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r700": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918631-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r701": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r702": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918666-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r703": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r704": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r705": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r706": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r707": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r708": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r709": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r710": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r711": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r712": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/subtopic&trid=77888251",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r713": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128295416&loc=SL77919786-209982",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r714": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r715": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r716": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r717": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r718": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=126938201&loc=d3e55302-109406",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r719": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r720": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r721": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r722": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r723": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r724": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r725": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r726": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r727": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r728": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r729": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(13))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868656-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r730": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r731": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r732": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r733": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r734": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r735": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r736": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r737": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r738": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r739": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r740": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r741": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r742": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r743": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r744": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r745": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99779-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r746": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99893-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r747": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=SL120174063-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r748": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r749": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r750": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r751": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r752": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r753": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r754": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r755": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r756": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r757": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r758": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r759": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(14))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r760": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r761": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r762": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r763": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r764": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r765": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r766": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r767": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "79",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124267575&loc=SL82922352-210448",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r768": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r769": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r770": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r771": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r772": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r773": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r774": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r775": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r776": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r777": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r778": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r779": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r780": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r781": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r782": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r783": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r784": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r785": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r786": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4587-114921",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r787": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r788": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r789": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r790": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r791": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r792": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r793": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r794": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r795": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r796": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r797": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r798": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r799": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=d3e957-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.13)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r800": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r801": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r802": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r803": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r804": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r805": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r806": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r807": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r808": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r809": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r810": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r811": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r812": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r813": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r814": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r815": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r816": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r817": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r818": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r819": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.3)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r820": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r821": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r822": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r823": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r824": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column B))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r825": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(1)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r826": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(2)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r827": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column D))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r828": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column E))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r829": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r830": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r831": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r832": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r833": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r834": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r835": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8672-108599",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r836": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r837": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r838": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/subtopic&trid=2196772",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r839": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "220",
   "URI": "https://asc.fasb.org/topic&trid=2134417",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r840": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r841": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r842": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r843": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r844": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r845": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r846": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r847": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r848": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r849": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r850": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r851": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r852": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r853": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r854": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=109237686&loc=d3e17752-110868",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r855": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org/topic&trid=2127136",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r856": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r857": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r858": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r859": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r860": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r861": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r862": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r863": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r864": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r865": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r866": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r867": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r868": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r869": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r870": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r871": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r872": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r873": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r874": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r875": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r876": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r877": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r878": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r879": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r880": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r881": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r882": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r883": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r884": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r885": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r886": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r887": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r888": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "740",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126970579&loc=d3e23163-113944",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r889": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r890": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r891": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r892": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r893": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r894": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r895": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r896": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r897": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r898": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r899": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721523-107759",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r900": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r901": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r902": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r903": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r904": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r905": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r906": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r907": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r908": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r909": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r910": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r911": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r912": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r913": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r914": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r915": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r916": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4273-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>135
<FILENAME>0000912562-23-000009-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000912562-23-000009-xbrl.zip
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
MKAMT I3A?9041N&P7PM\FYL 559.B;)307+F/DL!+8%^--PC#$T'RP5^[]=
M<U]3:J[&;%XOJV@L^8K .;0EWA_+3_?D^F49K "V9W>0*D%X_?=P/0T5-1-V
M(<\ _6.@RV;_D,50 4QAQST9B*@ UR-T@P%M$Y19;I4%DD:1.3>KP%UH@$)T
M+7B.2(TGCY9CUD3"P.-J#_E'H4 N .??2I^N2>-5*;PW?/Y8L-:=LZ-9N0FB
MQHEA@J1J,)P!9@<@A@VB<<>G,INI9&85&X,?@<6Q>0[\!&L*7USM@\V0FD(E
M2YD! G=5&XR<@(J#8= I#77^TJ@N]4MRYQDVI7@"N2ESJ47E.W,4U%26*;$P
M/)8N @VR@3^$/9/@(!5W]AR#;7'Q:BN?T.,(Q!>^80V)-J"[ST!R)LYI,E.8
M@KZ5$@Y6^_OO#HY.;['0)I*S!JD9"@=4B+2 >;2!KQ*>:W'B/YS"MN:PPR<R
M(T:AETZ;/1X 5\V0YH@GCHV)?>WC&D!V>A9$&J#5Q'YD][A#C[HF7O&LU]G?
M.UK[N-?IKW_UCFZ/GG?V#@<;==LEDBW9L#(:V/*'G;V=&E?'R($G@_P3Z\-B
M!/*<B/'MQ5'Y5Q+GP0%,@8HF#FO6<9.]WSR\7OIKIT)!@%A8&22KQ".>10M?
MT?'YZ*NU4? F>$$:K:?[FHDYP%%?H%MAWJG,,8JFRX2,(D%HK"/)L*7VLAT
MNAHM@_X PSXBTXNANM$"U$S*?U6%- NOXE80"#]G!,S'H ($VQ4S_#ZN[3R.
MBRBPFCQZQ9^G$9>Y,2Q 5,RIUA17*%2P1&C2=*"Q 92HHDR?=1H,1!+1)6VP
MJ:W>ZINMOGG,^J9A[\DIC(") 4.+CPY3HP.%D7)X+5>:)QJ]*A!Z(4@R$?PW
M^BCPI4R!-XVF/L*@>HS>%BDID;CZ4JX#&;VSPQ06C7F:02N@_D @A#6I6#N(
MTHR./V@Z@% 9:"SHV[6G$K4ZM]ER\ DFH1A&6F$S8,;@[!8$O#2^2FX$9112
M6V4("^HR!>3E\)"\2BE;PK;:9*M-OFEM@C+EB_^LA'BYKM+-*&_"%GB#"\0)
M1CC@0W$\CV7RL@!]@^4RR>(^B6AJ-^6R &VP! U<Y.D]:#0,I!GP/HY/*UW1
M8E,U%S/R6SXW%ZM!/!ARLW!$WI.H!D45C3<"T^B\6+ R=S@0-1YH(K^ MQ0E
M_NTT(C;GDTDA)JB#89^J:*@;VRBLT0RSGLVZS::SV@KK3.JJZY5Z$_80NFNM
MUY_A>KJI;-7FMZXV;YUU>_)ZTXF/"[UXH6H$94;"S(5H.($D48,>5A-&)%0^
MR1$H@E;C< 0'CRN1!,!0L6H,H KXLNO.(%RYT(U/"=6XALXD$/K"2#I%0&LE
M%T!&(#\!G\RPHX NJS]<ZB$'O5I4J@==P<TK9UT7#?748F7FG+E&7([MRF=T
MF"0@MNF>HL*FY$.=_YFJJH"R6JO8IN.QY>KUL6D&S/S7/2T%^$98W6032HA_
M[^IL)"(,2H-I6-V K(+?4%"B$<S=C4A!?E2K%U++^F5O>O#%70FK$@%5":8"
M:&*?T>&@P65:IJZN'J=*VAR&HWI^H,B&X)<88;TY(2[R<4F,O<^4M%FC@&=\
MGJJFZ??:A8<3?[_K%!18:4619)=D:.[*>#E4VP@]K^/./ ?09-3J\.I2"!44
MW\GA2A7YU4WK_J!S.#CZ(LMZV#G>/_CC+6NO<W2P6;>/V[+N\F=/P:J>.\66
MBF*"6LD!4*T2E\_6A/DW4"R/"%4>=@Z.-T-_]^GUN-\9]#;#JH^<]4=/@O5O
M>.(R]JYBD>);,L(<IJ_(LI#!EM'>SD=2_!T+'64LT?.<<FMFV(_@N/JCU_\D
M3 !-_W[0 Z"0)*Y^!&'H5K:VLK4D6]&3D"T$:EC3Q;-(5+ES/%#3C$OA(W(Y
M B%J7-^ L1GA[T484_Q+3UMA@ZK@&,/M,.=:"K,@HK,5R*U ?J% QD]&('F,
M)7\V8P1<24SODU0D7&$9HZWEJ0^I-(V??<T%#-9Y521,JKB'4[JMH[YG'?56
M#SUZ/;29_.Z*)Z&&KD74.(6"934N\B7_Z^M=K2]*(;R&)[JLA*A*/( .51F/
M*Z8+XIP.$^#;8CP6]C8F5QOC'Y!.*[RV6S[DYH.N\^PS6N]W5\@\]"#<&5X^
M5%6T-BX$"G='ZC )YA8XJ"CU%V<->GM^8S]WTXTO1_ 5T/KN-  /B7/< A!1
MXP;/Z3QD_^!68L"1$KQ9%\P'[.!BK]I>#A3.A6J]*3+,5_4?9O.HWMO?;10$
MHX,V'9=86!K"SQ](U4N5MI0.QF&EBNUL"B'80G L>Z/#'V& O4%.Y#(LJY=E
M62*:2_ !P^1:I0+QNLB=**]).RRE'/#QBI,F_J#$JM2)F:NVF<HBUI\CK=58
M.AAT*D=4N OB0WH(9CG"NSB)T' E;?7*FI+;];+8J-IN]^\TY-M$[5-/U'YS
M]2W<VV][NUD03"/7/I Z%U?#2U\*F^S*C=4 NK;%J*C&,N,9U9:,P#",47J=
MUEBM-"FA^[2\^*U\;>7+R==*@$M%$?887U7RO5Y *DC3E#,$MU3M[A/E[D+5
M(C@6AZ:VD:M^\GAW6)];G8HDOEOU5*41D2HS?,:;N'&.Q1S .U'I#^$A-&J
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
M<]T%]Y1!X[M='KG5-/K.[UAEM[TV_P=02P,$%     @ BH!65D3O,ED2!
MDQ4  !X   !Q-#(P,C)E>&AI8FET,C,Q+65Y8V]N<V5N="YH=&WM6%M3VT84
M?N^O.#%3$F8LZXZ$[7@&L&F8DI0A[M \=5;2RMXB[2J[*USWU_>L9+=07* #
MH9#6#QKOY=R^[YR]#5^-?SB<?CJ=P%R7!9S^>'!R? @=R[;/_4/;'D_'\&[Z
M_@2"GN/"5!*NF&:"D\*V)Q\ZT)EK7?5M>[%8]!9^3\B9/3VSC:K +H10M)?I
MK#,:FA[\4I*-OAF^LBP8B[0N*=>02DHTS:!6C,_@/*/J BQK->M05$O)9G,-
MGN/Y<"[D!;LD[;AFNJ"CM9ZAW;:'=F-DF(AL.1IF[!)8]K;#XKTDR&CLT20+
M@W!O-_$C+T_RF-+<"_.4_.RBDS9.;V647A;T;:=DW)I38[\?>94>+%BFYWW7
M<;[M-/-&PUQPC<8D"K=_6QTW-&GZJ[9(P6:\W\33:477PZDHA.QO.<UO8$:L
MG)2L6/9?[TM&BM==A<A;BDJ6M\.*_4;1$W2J:2Y67J)TP3A=>^UZQM7)3^^.
M#XZGX/D]][J?FSU,$4\J.W\;W3VDGB:P0\&5R2&1PS'/:$7Q@\TS.F,*?<&L
M.JV3@J6PGZ:BYMIDV!&3Y7W"^:56FN7+?XK"=;''AB'8",,YA72%A!:@YQ08
M3X6LA"2F5B%9@J0YXL%3,]3,R$51B(4!I$5K-?6CQF(T]:2VM\)X\-A 523+
MT*95T-P$TPLQOINJVB[6D-FWO*AZK')Q[X+3]1#.-^[..H GX1"-#JX!X_J]
ML EZ,S7PYDC($CY:,7P0/?!]WW(#/XR]G2X0!:0T99!UH:)2$\8-QZNT^(XE
MDA2:2%,NB+5D5'7Q?]K#]=4)8?*Y9GII.M ,NZ1P6A#>?>%L>B^0S<AUHYT-
M!,JK*G#5"_RHN^>ZH.9$4F5ZF%:X&)0ECBLMT@L4*9K]];^< O[+2X'("^/X
MSH+^:SY$H=/%8/[/A]OS(7AQ^> Y0>"&#UO@W:^4S?!YLZFNT:E6?+JN'T1
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
MQX RP2G4D?Q';%#)BP+SU<'XP>-]UG#P' PZS\# -0B\W+IZ:2Q/V4(61&[
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
M<0<MY+[)OYSS=]?ZJT/U_>/T'U!+ P04    " "*@%961"%1!A&Y P#T'RP
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
M:@"ZF1WXSB,J$4UT!(9CLH!DD[=1V@024XNHU1[U?)?#1\V42*:D#7-)BRR
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
MN,  O DQIP+$'OP=%+X85)D@YDC<LJR/]8J8''HUT#<!@I"=&BH"*3C+-6B
M^&@83U.%5@I]QVB)9!F;9?X?T-E"KNL=DDI JDT43M%^0#.;/KO4R3+2I>49
MJ5B#+C@M=,2:L@IN4)$5[P@P5S]<XF*1%-<Q;)B&]46[&:YHDN/T,ABIXP(P
M@\*AA*#>W"BJAT>*2C972U#UL/,)RG!'X\U@V4$GI!59)BN=DNF,GC'Z";^C
M,8LX1#TE"F_8?.<EQV5&#15M;AY]BK87EA-^3:ZUBX5&I:'GO2Q2M-X6Y+O*
MG;'BGM]H6CL?S*Q<D^$.JEE@:OFY [Q144$JJ(=(F*S,I9'-1I70_$"J.KP^
MD?> *JMO$$V)1"19/";Z0BLQ!\*$'3,.!)C?-,R%4@*[9%/0Y5%O2LA8026*
MM-QDH8WVNDK2*$#*2++<\^=@+M$6SL"F6,*J%#&UGP%;]3W9$3!55E[E\9*T
MQ&M!&SHIPBAG+3S5N$BHV(4@CM/LL6<XEW>U!C-ET?'>PG>F210F3AH2[]J;
M=*;B\ _^XO-23VW0Z+;X<H7C=Y&]/QZ.&YD(_Q0B #Y_W/W,.MW1TU)R?38]
MLK(JY[WQ*4ZYMB_&8,AHGV,-;"DC/P9=S8CD\#<MALZB3"'+$ZQ%EX*A%Z9L
M" 1@F=V@/Z0T3O$9-#[#N$B*K.)3"!?((84.8-?AJX%:"PV6%#<Q ^8A,=.U
M7$/3(20["@\)<B,5"2\RP\%S2:[2C7?3P<$W N$%>ADE:SP3P%O842Y3Q)FE
MAJ?@,921&\,?'JG8,_QM(F-V$KGT#89M%/Z!SYP=_S X9N> !HKXO4AR4%N3
MKJ^R.9Q]F"#9VC#="/D%\8X@G*%68;:'V Z8JSI *0$O%O\"L( E[@%8?[!R
MS(GK&\\GU3(#C088;!HS!3LOE8)TFR$A!,P488MPD/"?ZJ3A+Q1I9"W"T/^P
M_ ,;OQ=X#9BLSH30&K9WD<!^"97)MT J&I9>%9Q&E"3Q5\4C!GO"(YI8-9X2
M1\XDRSQ<,!T[^VF;B]A=7=I7U:69E5Y$V(T"<#4/2=)E!6H:=(X=_YI:TE%
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
MY:\#&D2!%Q,(C?50IUG54<61,\0><)]I&Q4CZN%NL"X CQ$(3CPA@05#I=R
M=TSHR $'E?VT>U[U3,NDT+-([DB"#9I]E\"6#].#R4UTE*SV:>\^"@FS6UNL
M V)M3B\OLU\<A*Q -LT^2U^(K-KL@,QCBB]**+.,Y;@ '(O*N;.+"#$%MTGU
MB[?/Q I>82=U[P?Q["3LYN71<))1;WLOSSWC"Q<QN?9F"+ Q2@_/!([3;Q24
M#C.G%D:M$ 9!:-4D-5H"^E?B\/=".\B:NY>:5*X5JG,J$Z40U99Z&QARYZ[F
MF@O&H?/"J(2@.\$6=Q?"SF'C@$%1H)&_T&N&<8E_^ .^)HP$L(L4HLMN,S8R
M[H3;0AZ!AXZ"%7YMB5Q*D#U..6QYMN>]2K(&/YXP+((<9NR\UJ6K!/]=H$X<
M%RR^&1^<)A&<"7^."A^0<P*+AG@+QD":GT%U(QG(,8C2<^-N59XDD?!O!V2U
MT#E]:+%,8A:2#B*@4\$\F9>)HTQVBWV9*%K3H/3$.ZXF!\@=')  ?>VBRD/<
M!T:RAC%!8H!EL=XB'EVFC>Z$/$)NYR*7/ QZL.-@-;)DFJ]PT9&R!<>BJZPN
MC&]TEHN7C@ 15$*XJSZ$F:5?2WM5R=\T+&=()#O!?%'+,!"L!56PK1Y%:<7#
M+7CJ7VB8BHZ9N:,&D&NU:)B:<!LA-0_6)0K_D-(\V L(/A5P9 =&JOBD)DOT
MC"T)*:RB=<;8F=^+T+^.. JG"M /5&X D0+L\19%E(=+*KJ<BRH;J35Z>HGI
M\TG\8#F@')+MBTR'A(C;P4;2]P.US)E%W8"*I1GI@/!&-WS&2HZ*L@1(":C*
MF,;Y>LG'/KP)(V^5I-<<KDQ+>&9E7_P$XS-@M25^6 8YJ[-8JISU=%EH4+1,
MR$NF;7(JX  O$\9!H16*ZR^!1\NULQ#C;=.U&; 3Z6#X1EGW2)@?/UH!+V *
M@UI$K-U1,,J=DQ1IZGG>&X-#Y2-(E$ICD_-6Z1'FRG#B\B(/1%.$]>X*NV;1
MP>I#>6BNMK[-OH@3*E56J8G)-SCF$F-7,CO_PNP;+$RF$4";R_ZS5"(VL0G
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
M#4X@X8HU61>I&H6(RD).UG=-'/8G(_BH@N***:V] NW'C#.$FY)2RH!+>D,
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
MMB\D72'.BI2Y_4)=ZVZQW&P13KI2F-7[&M::):Y1E]'1M%4.'F;O+Q>@G9*
M1RE=+$'&![KLRINMLUPO,D_Y:9)5&Q/#-L_"&UW]#7=.+=4DC*0]ZTS!;ZFH
M&"I:_Z$]T#I4!W2+%)\&#5.:XXJB8'H58S=C(#CNB8Q*1VA&2I38TL-#\0(Z
M=Z $UO5%4@ U$4&*1HNW@ _,HW5)+*8QM642Y<.1!K)*LWFXI',/>_U[H5+0
M7^!YWWZ2^N32TVC R(U(%.7-MWQC4_5LB>1AB.1'M'B9NV.+8J>CN(J(E?A@
M#DJGUBD8#9HZ%P,W4'F.;<KI46IS[,/NAH$8G+*CI7683'Z3KLKW,PY/F[T&
M>["5_?Z7WLI!;S0J][)T2H0Q[%/U8,%I2HN0.E5+K_CRD"[A8,; X.4>DB33
M,%UP'^Q(38!S*^P>'V)_>3CF_)W0=)O/2=YD_IQ[T7.7<:,\9-J\'UMS1_BL
MC!0>B8AJX+@[-+39^GD>DM,%K4Q^?4M(#T1(5WFJXQFL?EQ7( NXHM#/! S
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
M#,J+1+,122:Q;U^7YV15IGK>5P/4T;%<0?5R2,SF1(PSRJ;$^&(-[&\3:?'
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
M-$B8>M4.^KKNT6 ]Z4XSIX[W866%LK6R((;"$"B-4$U5$HH')H%]! $F<LF
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
M/;_;[?G]WD$*H2<*W_5K>L6^9E+^NM^@_#U'Y)NG DOTS1MR=/*R:6$MA[7
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
M>;3T2"&#W\&U^RGZ"O=E".?8HT/-&B (7I+ >/^C(T2+9-_[.Y@WU +O0K?
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
M;;","B#[1Y6G939QRBPWS/GL,$[0-$612I<QJ?>PN<1KP./5*S,V2]8F)<O
MUUMY#P;5U1H#4UZJC58*&,&BXV"9J]?Z'V]T3#-*:!'TT!L972Q=-/+JV>WX
M/OY:[+^+B\ZH.T(34'+KY<5B'7;(.JS%O_B[4SBGW>':K[L@*_;[[G0PV.O)
M39/M=SO=WE%-]FRK86^IBMBQ^.%>&C[3,*]1&D23;4K_Z/I-2Q@TS%=J #>L
M\=!;MM\N1VG]*QIT2X+>MS4!/S*X@K=!/J<[=(+_0#\!J.+L]]B_:G2O]LIW
M,NC3R7_9>=6'F-[2&_EGW3W[;QY,LEC+U"U35S'-_//AQ8$R]5.'_[R\"J(X
M&+.OD'(UUC@26U2V;7/ANT/_M/LX_</:S;EM<\XN_,%C;LZWZK];& EWWN:V
M3:6^;[(<Y%'I]_U>;U><Y#NGS2,#C+1GHST;#6?C',[&Z9Y]C1[_;!Q:G<'V
M3D9R\W_BH 2&@4S<XH@B%#8$D=N%V&@$IH5@E"F+*"=DRIXD4,WGZ%:B_V>=
M'3@&."7C8,<D6(*BCL$,#.-A$(V2=&HQC[>LTU_.,L5E"*_P^Q?UCU]\[WOD
M3J1X*D:_$YL;<*YCPY_G4<.(F5K&P43Q3)=!A$N88IP;*RS*I(#57E=F]RGZ
M6LR]2W@XE*<^*@KIA:N#,] .AZK_'B1ED-UX_2%.J'?!)2,KCRP"6$& Z?1Y
M!-L89)94DD[/H>+ /(%I^A0WAW&$FARM##:D6>"\8U44$LN6KR-,MH"A8>P9
M!BF9!.@6#&+.;NF:H*K,7^?V!VB+_5%BI@B>>$[E]Z91$B03BFZE-LF%,S37
M30W?,[+OP>Q1VES>VL"#?RZ\. THTZ!<<KZH\_N\'%/U2D&%(*'4O&#0E,-J
M.O&I1OGJ>L8JCM05EBI@ZA/\'J:MV5^(7$DQX*#T8ADK]VB07Y5CDYF.33(E
MKI!0MN*"B(71W#C&@*_O@22^IKF:0@.3L1["O.)TJ2L>\*,TFP6)% ,=9?Z
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
MCJB8Z>YD6T_WU>M]BV@;#=W.X+>)MN%^H@TA-)-9Q(R$.XKG*LJXPJE)[CV
MP.IUG=:PINWKSD.Y(BS4> =\EO+:D<="X1H 1ZV-K/UQE"S+@M 1$:9/BM*R
MX-I ?[!0GV;$6[X&0N"; ">-3&++EBJR)HSRK%SJRB';8;8R[R8A()-U9#.Q
MV54:3:0T"8N;=:=#6S74V"VQ+G(J$ "'5""TH]YE$X^.5^^2C&8Y#WOI7*/>
M.I4K,1*0T7U!K-0[,3>5&)8!U4I>PF4#KUYX'Z1835\\Q3S*PI5[QX5*<0$?
M6'9VK>P\)([;_0+9:Z/D AENVBCJ&HRXGZ+CV;O&MN"5/KW5<J[W20C$(9 B
M4VJK580HRXOZU>]C,7?#Z"1^EJ1T!%1S%J_(94<Q-(]9Y:[.2)]!/PX^P:9:
MJ6E7V'40*5<6B#@.*A.X3XPC+/D"LT)M+:?U1I;(A\1I.\HVFTIU_+)MVI06
M5A%A;LOBZLEX>7[A%-?3.;- )"[JAH]E^'80#?H+3U!-MRGBEHO><E+E[!$G
MF@)JYJBS,SL#A %B9(L:2M,*\H4+B]&$,.J MJR%;"%U$'Z 6!GVP)K*8 $[
MK;R*&YX/MZ%8O9$Y$J)J^2$$@POO0YH.:AB(KI78"\$IGN;*6=!O4!VZ@J7
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
M3<DN4OK484>]( +UN=+QU>DOTO0^GG\E5<4QCBA!T7$0$#$JTFN5 TP6BEX
M@4NA1J\-PZ HLL@6-.E>N^Z+N6<5YIEP[BQZVG7:%JC'0!"DBU9V7ZG.K..O
M#^,]HVR47IN-<N#9$6TV2IN-LL5)U@X7Z0V=&0>0+8J5#L\\\>\W2W+'8G;,
MQF:-M.%61RW);?'EZ19?[!1#^W%<=0/J2*;N:;G2U_60E*X=3<"_N7'PW^B:
M?5^/@[^W1"3+T'MO5%#O,Q>E'8GEYVAK?\JK.0"W1O]UV4LN!8T.8 2GY9^>
MNG76M6B7%%(['6E-I,T;GGUG7>6:32MM<'7;+=T+EWSCMM&P-0G(8H#]J!J*
M^.&.J\UKM@;E"R1BB>A\ 9KC;Y,B=3N#2;=DZK@8+2@PD[,7!5Z*5A3ZOM$9
M9,?&Y0@Q.LA^S;_BLVD<:17Y8"LFI)F<XYJTV3<Q:7Z@RZ?4)-)]CR.*K#N)
MFVQ*=2 U--;*$Q<KNC-P&NAB7@7]":-AU]%#$@_;'H\:S]2809SKU64R#$65
M\XR!50G;DG/7?32G>G%*V<&/@%M($K%''LSPA-WNTZKQ#I*WB K08,T62ZT1
MGS;I*NU61[CF6)2[W0NQGR4';MV2!LF/,4$,7H7E%<=%S=G_=K95.J _@2A=
M7[A/!J.I*B#?N/7*K&P( X[L>G;'-X+.L>FBO&50?]7H"]88=FFH8FDDBO.=
M!%EV0[^G2%3G:( \I*VVEF3L$*YY!G5S6/$,&C@&W($=[Q=GPS1]_Z"2>';V
M.QEMXQM3*$.^6PDHBE>#,Z:P.R?V^&5-"?N]3K+4J#!NLE;$==PWE0_UT5,%
M^[-4<A5E:<)NIVKP2^M#.J!M#[E)V.'CE5U%$TX$P5-E$#.PBH23E$,4(.E2
M>CHC);'GL0Z[UI;IV5:[SGR^J!O<J#Q-$F1"TC*OJ+K)$0.5^,KOU,A5 M%T
M/NAJT\3VL6LK!R.< T!&/7]*,:XX^L((1\";2'D3?W1.6H1)/WG./ZH<#/J^
MRE>F5A =/,@'2 QFA-IMW_&\=[:,K\:L&B7!KTM.<6S0/)-T_=5,78E5PXV.
ME VCD%8K]"1'='6J\DAMRA4=?D>]Y"@O4SQ9C&1!AX%TJ!I-/,;\:KXEFE4M
M7]=OVG#Q>HUOVQS7VMW1\7Y;4?R8F2H;;9W6M55)@:] 5:R_@^HZDZTVKUT?
M^L*J_=RV9+>WY_OI#@.HKW+>5KXR96MVQBA8W*5BZ+.6Z"2R4=X)$MN)Z5?.
M_1;SJ=&JX><2:VGP=]X6L['2>@O>"#B<3R7;B;-'[HL52-+TQE*@T0M=\S)O
MU T[WN4JL:^UH>Z07%] ]0W'^/)7ZH*.LJW(5\)"#;/A]R$)LR!4>,-AID^3
MZQLY@7&XT&N=2@Y3+LW<S>;&D9J>8*KR29;>!#%VO^;TDF.29R(%-EU'N2DH
MNJ5XR,6:<@TI)Z]-1FH*[C5P\HK,E!2CZB^WN&&D/M0<16< -];$=N@Z+Y5H
M*:^])N^7[]@0O,VH[YB(K^80'6W@DV$3T#!%6$=\<P.]@&OE'53A28!*STR9
M+"_!K6&-Z*>_OO_\[M);8$+0DE*4FO/?W-Q]=)R!6BF^,%'Y,+JYJE)6[191
M#G*3S,?Y<4%\(RDGZRB(_CW1KKTYV!4UK;,Q0,[9O:M\L(5L0X=-FG BCGU3
M-;50-H!BL9(3TNS9W&8OCN;D7U:1(:O"NB(+Q/M$*(/KSV6#R)<'.8UW'H2U
M.S*ORO!Z<#_'%V8LGY'EUKSX15"<X-%Y4=5QJ^SJK@<!_Y!M%#WK\;.<8:\R
M#(GAKLK+*K.KO?I/>44(88I&@V$L1H5K)?2ZWU'ZH?/ZFIK@6(CDI1 W6KY&
MH0HT#F&H9IFBR=M<K#6$0] @26O%$+92[(9P@I?&]J] /C0<CIK7G_F\[MR/
M] #5@R[:0_W^/I9#]!G3.YA%DXK'5F-P!C,L/W"T=D[OP>AS%:4%5*P$/];.
M8<_ZA1EF35=BM)@&+WX<]-LH\H%'-=LH<AM%WM&?HAU/QOBC:[]!J*;)MBYS
MN&P,G"@)3^U58YG:6$N "'F= ;MC'!BR;YF'K\TBO+_'&<R&7= @;%G%6LGC
M#TW;2VMA7Z>KKW(,67F2B]ATW&-_\*_S(P#_^JCP\G&AOSYD8+B@\K.H= H[
M;/RO7]5U%<3+70-7IX$RI4+Q_QI3!=1'-NQJ>K<NWG8*MIU:"\_[!#JB8#F)
MJ>X\NP6*4Q6\R;M[W"9R^DP9V[\2WB,%E/9\/;T$!#L+J7: %.3?.Y\Z38!H
MC<AIZQ6LM6SRXY_'V0\_WMUSVQW1LU[3$6U\&>=7&G6/VC0!3\?!,E>O]3_>
M8"@\#FY>1PGQ*#WT1HZ*Z(BH'M5;!N(+^6O1G"XN.N>G U2>I&&AO%CTJ@[I
M5;6N4_S=J'-V/ES[;;?36_O=IE$OX,'>V5;#WM)F\6"Z*:[(P^YFY=&BK(TN
M+8.O;S7W^ O=/N7IEJ7_I^O+0)GTGT[\%=M+QVE.@,_L"_N%G6 ?P2ZOT&ES
M[['#RHAZSZH G'.0RQ0#+C,NUFJNA(FHXB"5X,)5 +=,F6MW(/DE)4SK.R$9
MQY\FHK7);>C;@+/.IZZV0\!Z$5,)YU3;8LZ0AUQHX1J;I\LQ,'M5.=/&'@99
M!!]$Y$:QS66*O EY%IT?V(/EH L3UVA"0--?=.WE!R%IA8</6P7Z7-U>)PW.
MY4+:]9(*^\Q>7J7HW8@9ME>JCZ-)0R1,;G@$G*DP(%9+%XKR"G2/ BXGS,F!
M;YWHDYM)3!D-\)XD(+4*?TC9/510;[%T@-UD7@KTK9_TM+DX? $J7'$CTYS&
MB#"AO?'P&ZNF<,H2NIVSM)S-N4&0P3:NK,VNANM/2>O1)PO?JBNZ,0"P##@A
MJ](WQ*6)+JR7]U:>9S@AM' X:K/2KP@MN+I?=S5[Q D$+583JQ;!C8-&Y)7)
M-+@"R8XZ#-5R,^DL/:)I=3%<C-.PI$F0X/S&RNUM@JHF_@/I(@@5J=L&!4/G
ME<Y6U%. J]ST2^-@AJ@*\TC"!"OOMK^M%=7SC$ 3+=&7BLU>@GB"F30"XI"A
M(O95PP $5(0MCFHG'5(R>X2UA EL8?9*&3:#Y:^DO G"@AVW>4PNWK/ !+1
M1*3118#5;C<4#)2"9R)<%>XEG1+XCDMTW=='7E$W4E8GSO-R@D[DY<<")+WV
M-7E/9H*\/DP:Y;*D&%:0L)*@,Y[\"DJPLWX'B-_ZU)&=5NA76>2Q7"[OT<&+
M>1\?D2N/]%81HQCXHL3K DM#4=&1@CY9((4S2!^@FR?A<CWW2[R'6(UAEM,I
M>S(J9>Y%7S'<:X8"X>&T)Z!@00W"!?1.PL/2-=N(N_"UX(" 5*RC((T6BK0B
MLM]NF:%[P"CP(.XDNH06:1(55;P+5(EHMB+&-21,SCRK&Z0DN9,^67DEI=YB
MK@2<<!9D<G]AK*M8F_1>.SXF=]?LC:5CI:V 0]&FAAAO&6+_$N-ANMN+G-Z7
M?XZ^OD[2Y.=,"K4Q'/81/:UE'KX@.@'QZ0/8V.YD')R-NL'%8#@>38,S%0XO
MSD=]U0T&YX/I_[['5?3Z@]X+PBU?@,C[RXL3L*.28*%PQ)-9$"Q?OX/YOT\0
M3@HG\U9"A)<4(7SAL7\#7O>U> WJQTF8DBV#HX%!!O<!C'3VXO]G[TV7VDK6
M=.%;4=#]G5,5H:1R'ES[(P(;[,T.2[(-+C?\<>0(PAIH2=C U9_,M200$MA@
MED""[-A=MC4LY?0\^<YO:15PY)]SL]7__AY_^KY/&J?N>/O[P3MUW#H^9(TO
M_W3VOS1^'!P?XH.]3]\.CEV[^>XSW;_89OO=3]V#K8_DH-OLOB?-SOY%G[;V
MWG8.OKP];KS;I\WN9WCP;I_L'W_JM-XUSEI?_O/MH/L1-O'!\4%'XL:NZMKN
MVUZKN_.C@;<O&A?_?&M<[)RU]CZ>[1]WVJTO^Q?-XVW8[/ZGTXB_T3QNMM^3
M3QW_[T_G!U_<B<&4[Q]O7NSO-2Z:7SY>-(ZW67/K;?S>#CLX;N#&WD>\W_U\
MOH_W<0/_)S32:S^^>L<#Q X"#Z4 5 8!M%8:$*D#)PI92_#:AD+_^NOZIFY<
M-3A)GNDI?/4O"S_T.]\+/6:V&\-/DC1*X(]OR7ZON&3BR9Q^OAYW?(SH7:]M
MEU5CDJ(Y\>O)R<F_\03?/BS3'TPA/9G^;N.O*V]MO:9G+ZBR6T2]?$#Q<9^\
MS85Q^DK?*M6HY,8]Z41-\ _]9ZJBH(<E'.NU/TQZP>FD5PU3(KVO[;;>?IJ\
M:].[A6YU^6J2HOYP?Q;T-DFHG>A;)36GFO/UU"SJVJOEG%*5D]08*H[RP0MY
M$UWL1N@=I3X(!>6F3?[D"Y.GFV.2W]J(XN?>[[QN?2H7]*:E3F5XCLY/DOA1
M!DZC_^]2:"P25:;Z[EW[G6N27DGI[B9Q[_)+XPHS13L3N"Z7L<'53^61M^,3
MLGTV%E175"1)^2.3T^XG<RGNTJDHNNE0SK%(6AR:*R/%M)$CGHTW\=IUNCC$
MF\.VGI23+'6YLBY8 797NVJE4U1;O0+>M+(7U3O7+R3R-]=#M:YBLZ[P6U14
MGCPF76Z#]F7MK)G93 7N3]*ORJ9_EU$G99&>5%&E5/;C_/NE*=\EB_5L>;)+
M_?Y2]"@CLR=&@^%88IH$Q S]#8L_D6:&M6&_4P;_EPLWE3\TCE>QB0<NT]"N
MJDL^2+\KG3H_4?*N#?7Z>E_MPD,UOTEDUO0O_9A5>B:!;Y>Z7BG,36W09;!0
M4O3C<2DS0,KLD'%*S3CD;JP5%IK@V*I7)/RE$HV_5I=>4. +N3WPY1Z.(WKI
M.,K1,DL1O9&C998K6B9[3+/']*HOU0MSF-XCF.,.'M)J9HGOV*XB[===-(&R
MD<:C@UQ \3L@EQ'E4%6.<A2_J&[_Z@THGY&X$"V7\:>(@ D/:W<"S[6/5DLL
MY4[<@CE/L$=W/XWR5X<1WG 8?XLZ2A%SD7-1=YK+AR@<CN>3(I::I\D",P_^
MN0-"JCD?8V@6]H>34:T(4*M-2.01#L_M;'W/U?ZUD/,;W/SJ'F?LID6:V3.U
M>IB^K:T2DK?V2ZI\X^ZMCSSR".XN'W.1(FO+H,Q0%(Z:%'+\Y ^3 R:IZ!].
M390SID-OW[8'W6F1^K%6?6VC]L>'-YNMU[6=K5>UL7,G,E3J:7O=FQ.T1L3$
MR4..J678D,AH EH/ V5,AZ];R3@"$43@RJU3.G*<;[_:/'7):Y;FN>.>V!W3
M?#-VQQS_\VW_XC]'^Q>;Y\WC3G?_XN-YL]L\VC\^.MK'.VS_>),>['V&^W@?
MOB>?CO:[9YU6]]-18RL^N_NVV]HZ.CK8^QC'^I&UMII'S8MMV-KJ'._O-;L'
M[S[^F'PG_M;I ?[,#]YM_VC&>>Q_V:>M=V\[S:UO9P=;WV@#;Y/&WD?:^M(\
M:N"#;P=;KT-S%_YXO[<]:NQ"TMK:_]%ZH^#!_QQ!V_VGI[^HTU8W/NO=/^U&
MG./!EP;9W_N(&U\:K'G1:>]??,/[QY:T]@[/FWO[['\N[-G7$'?%.&&!%4X"
M&L\K4$H$P*#%/ B&B'!K&Q1/G$'C0[#QYXR65YD4?Q,!37VEZ-2S)!?'(_#/
MST=P/_XA[ ;M/-]9^<ZZS:8#B^8,5ZD+4ZIKJK%RU3MA4D]BOTBZW+Z6='G-
MV7NS56NI5V 5Q[RJ:XU6<,R3+.(5'/IXT/DB7Z&+/.T;$?DBSQ?Y/<X,^>E%
MGOS8 W^4BLY\]U$W+4HT/=LKG:S@E4Y6]$HG*WBED]6]TDF^TE?R2H_[1F2^
MTO.5?H\SPV>N]-=ES?W:[I'_157\56,UOH(7=ASSI#[*"@X=Y3MDY>Z0N&U$
MY3LDWR'W.#/JYVIABAI_6T2-/UME4*W@W:)65!E4*Z@,JM55!E56!E?R(H_[
M1F_;MWR1YXO\AC,C\4\O\MU1WWX[ZG?B@X?C%@VU[?\]37F;S_5B3RNRBF->
MU;5>M8N]7.N5O-B+HYTO]I6[V-.^T=LL*_EBSQ?[36>&K6VDHK)%FO6U&_ZF
MF/7,"2O'":P,K5U)3J@5?ZK'31.Z<[%.Y\\*Z?;N\'EHRL=C42F!F4I_ VJR
MI-(:6J_MGG:[*=LRZ493+96F2Y['DY*J/F1*73E*E;^FU(S494:J0F.DXO4)
M)(>UU)6@_5V;SHII:VDROEYK^E&FDE6CDK1WE&<J66$JH6,J(:E595$W*<-P
MY6!(,PQ7'(9B#$.:2NV6M<VS<+V*4(P;27^1?)*AN,Q0C$=AC$66ZK^FFH6C
M\WKM0T>/R[8GQ^!)LH=D=*X:.HN]I;\(),_P7&YXDC$\>5)^(Q;+&IKYKEQ!
M-)*,QE5'(Q^C4:S7WDVZ39>5S,ORR3M774DWBZZD&:>KA].XR>P7COF,T^7&
MJ1KC5!8FXT'JZ[I=%N3/B%Q!1,;M9"0C<H41B? 8D6J]EAKU9!2N' K3%C*:
M4;C**&23H >X7ON0"GR,.X*TBGY\'_K#T<"/QOTB:Z]]SX=VEF%7$:MQH]DO
MROMEK"XW5B\#E% AQ)YV3TL=L\3JC45Z_GC?'P[_S'A=/;S&S6;9D;+*>,63
M,"6$U\?I5.!UT9PN037BM'AVQN;*83-M;,;F:F-S$O>#R'KMK6X/:O^DQGJU
MAM>I:UW.EEA19,9MY=E2N]+(G(0"(;I>6[%8WF+P__8=5R26[.J.+W3I59S%
M5GLXZ5WNI@IY9TY</4X4F1-7G!/))"0+L:A)G*7&V&7CV_.H2@S'?>(*]W)M
MIWL2I9DLOZPF5M-&\^S76FFL3N*S$%^?6.'V]%EV,Z\B'.->\NS@6FDX3@*T
MD(A7IQ[TXH(.4Y?WVNZ1'N1DGQ4$9=Q1GJUO*PW*2306DNNU]U[G(*R5!*+*
M0%QQ(-))$!92Z\DKU6V/KAJ/ORGL/X>^E^M<K"0^T^;RG%ZPTOB<A&=AN%[;
M]8=%%-9.+_0'W>P\7E%4QBWEOZC#?]L.NO;PI*//4Y==__/J73=],C_\B1[^
MUTB;CI]L]!2<NGIPV.Z!$FFOD(B'</S2J'\2:>22,S?^909_S1R8J>>,#RG%
MZX+%9YSTRYS 5X.4A-3^[O_^T7:CH^(07\?S^)?AU5>T&?8[IZ/;OS)% 3:R
MD1_<P@'%_U5,JFL;A,Z@9NJ_:9!%>_ []3H>?^EH<$6/AQZ8@=??@ YQ7J]T
MYX<^'Z[]=7W+XN;,+/?L2MVZ'B$\Z37WR".X1T7SM8V]A)"RU>#-WM)E'GQO
M]88\NL5!= M#%70DK\L,U]#_"X*ZZV.J)A%Q(XE\\B?]P2B=ME0%\L3'_T2Q
MZI,_; _C4+RK?3@UG;:=+O?WMCWHWCJ[J=D<GPY'[7!^MU6Y]7N/PZ5[_:*R
M^W3Q]T+O>]W7 U<T!VL/O!WU!T6-^'=M,]"=D1ZD18NC3?59ZLG!L;ZZZW+S
M\6B=M'LI#2+^+ZW/S85T5W7*-Q^%+[YVI+_[FCYU[111GN:MX^GOQA&<I_-O
MIVNCFG$GN6'92>ZGAZ/V1WK6F_))?T[F?\/,2/%_E<^L]I.?7-!B7N^L5QOW
M1\"3=F_QGVE)!N,$\6LK.[S6EJ%_&793K]EKT?WMPJ]8CY^_PN[_K?FR94/Z
M'9M:,X7+UDSQ.CA*3TP_/(KWA*^=%_T<VN41C[_3[KN:O];=X7+@91G\Z3'W
MBI*Y?\1E[/@4B. [Y_&]X >)/$?]U%LP?3RUDL#P[VLS#)=HNIIK\3GT]Y_)
M7UKKGP[BQ L$E@OURZ_7XL(,$X,'W1YTSNMI5KK3J445V:?=C$,;GL1Q#LOG
M73UB(O1.5F9\2FMZ]-/=NUJ-X6FGW*EV^N-RMXI/I)>JW87XL;@62?=/N_RC
M/3JJ?5[?7:\=^E[\Y4[<@PA9?Y*625_=7">#>%C:)QT_7&&BOI6U=&?8OT9=
MY>['Z0]<P5'%,J75C>>EY^+%-ISLP/B2GVSZU&7?^A[AE'YG?!7^\;G7OFR:
M,ORS]L>'-YNMUW_6IP_-_TW;&,];+YZK%#@WZ'=J_?B<J>,V*,2.] .W,$0]
M,FM*#X@GT@[:Q>&M^6%2'MN1:EV:V<[D-]Z4OU%T:T%_IY</!V7AZH'N^A_]
MP;=:>SA,P7OF?#+.>&Y&OI"R=T\2J ;%9 >'NM>^&)_<\=KL137(1>VG_-:P
MR K\ T-$:F'R^#]+("2XEA.KC0MG>S,X3;63TWSBK$C-GR6 IHG%@W':^]_3
M>&)".\US?-&F]"7?[ZWP^;Q9D'BMA^T2^6.18G4G>(L$>12)]V9.U@,_(<ET
MUMJFW4FL=9UI(VBZNA?U[O2=]5JK.$O7/M\N*K./3U Z/_WKPMGX0>.F1<.;
MQW*)JG18"YX8KM<2><0QZMI)R0-3E!FBL!\'<JD.7')(@?OBV*>O#M)].[[Q
M3+J3KW2)XAOC:R>]/7V[W,)/!94'[Q*5UX;>GD8&B%)4K:-_#"^O''UR$L=:
MZ,J#TTCIQ1MQI"D1<!J_NU??+TJVG=DCW3OTTW">/+*8TPI#[]:K(;*P.[6)
MDJZV_>Z70[$JM;VC_G#ZW?&6QX]$&>%'O+*C(%RL9+R[T\5<;E+ZJ;3K?3/2
M\0<CEP[[O6+3=*3D0?'3VO1/XR..?)&[>5TNF8%1&)2D?2G/I"V<?*1^^0QW
MZ@NL# :1<.+_(E.?NA)4EY.WG=,D7(Q'6XH'?>O=Z:!L@1#'EW!6 +<]_#:\
M]6<GZW33H'\QI/KT@LT.(:UK20&NQ$U:_V(HJ2A_%)^F/GPY'7\6#TX*[*DG
MD.M:O*1'"?3M.!3_O1T1:1-:#^,6IM\K]JA;5@U/0W'MH>WTA^-GWCJM:TM9
MR!U7 _BN.Z=Z=/GPFZ2OVFEY T8A?ZJC0!QI.RUP(D+GTUU]18CU)"?\\*F@
MU'#V)Y)HD63<L>BKI\78FP<?$6%\I^V_CT_O%"CBFJ95BBLW=53-Y>4U)9&O
M,$_<?$6_22QIXU)M%J!MZ"@A#6JK.\M;[^E"HBQF6M)3MYQI5".[I[WX>J'7
M^ZBJI"M73][6$7K%C3CHE]P6KY5!@O]85RF?]9-S-V;*>("O_5)_,'M[7GM[
M?&.63[>7@FMY9>G1J]H?Z,^Q,EK2UJ0)0'SN-)J+'T\4>LEAXR??S+7Q\7_@
M/R.LO_<[W\?W1G&'MPOM*MZA4=_M'19$,SPUQZ7NFWXT:><=?U8[/G6'8[P5
M:WXYJ2EXWKP1KA_'&_7JR"SIG^F>BK)"$L&GX#>1>GZI$D?51'_SO40<.K)Q
MO^-+UOU1"CWQ=^J):Z;&-^:5FP=7'(SZF"<*!29**"<Z*1QS0[OQ 8E%>M/<
M.+]5_3C.=B3X]FBRL[>3S0OR=[';_5W9=;44KI3LNEI.U]5-P"T<\5=D,(@#
M ,F*J4^&_M7D+W]/'/GM7C&'XDM_7_?5)_#,Q,L4OU>^/<:54NN2D02M<7C!
M^(?'J%LO4#<)*+C^'EZ74-WZ-EQ'O_4>6E>*_^8W;Q^LC&2BV)T>>\>HL]]M
M3W?ON*>Q,':O?G2_3?3%<UZU1_$W[)V\E$4[DM38J!\5AM'XDBT,?]I.^:"J
M#^<;]4\>;?(WWWM;?A@EB9-IN:F4S7^W!5^%Z[(\<OW6Z6 BN"5/PNVN@RN5
M-ZWF8'RR!N7)NDBB;C)51U74%[+Z?S/&HKK?Z225K[8Y+"2UT\*$&P73,F!X
M(DK?11:]P5 W&4._5YK+TXDN5(]2/O1E"OVEY:[\I>$(C/H@_1G'<7(:Q<NR
M7$>:5!1.#Y.1L+ ^#/S8ZAWW9VRMF+P?Q_TC&?5+D;TX8/%GQP]RUW^QN*C2
MEVV191M5^=.)BRO-=[($HWX\UI>JO!M_6H^F?V-\B,=FC\($U#?QX!17X?JS
MTS@+=3J=S2MSQN767]D\XOJ-E\@7VVTCW'3AYNJ>]'N%4M8>3JM@4UK7V+8T
M;4R9:%]7NF5\UOC7)C@9^*XN;$7C79H:0BH$4X8[M'OI"/5&$W/0Y!EQ'PO[
MT_#2^!21D6(D:AT=I8G:4=35X@$<OW:I=!:_-':7E':Q\@/%Z^NUK7(FI[WQ
M]$NS[6@T:)O3L38\3*:O4(ZNGK2OJ5F/3;N%QGBYMH6UNU?HIMW^P$]A+,*K
MX\8NLZLA^A#2B&ZQJD]Y.J^\G!79@I[E]?7O_H]D<-MT;NSYNKK TD8E0V*!
MD'R;7;?9EQ;SB:<P134DTWMA<!D;0,=KZ7R"0&D1BF=^_.KX<$9PE^<Y\D0O
M@;5@\,)?.K$)E1MS%T-W:5-([%&2??>J0E3Q\V.[[%P4P?1-U_8_TKNS-\04
M]]3'A#*A*1=?2];Q:T\N%:8B'F>: ))3H7MR%7E0WI7E<WNEVZR("#B-!'#I
M@8M+-7WSEH/T+G)@"E0XT^GK]60O&B_OY?H5DL(-K/Z_IWHP2L.;FO#DUKZB
M_'JDH][HZ-JG9H92A*^,A^^N7J^/?5WEM[Z/G2;7GU[:V-/M'*6+3O\D+FJ\
MA<8,//6QDL?33?+\@B)25%_R?_Q2Y"MLNE/+>^D0N,G'4D_/BN>NN+_27A2.
MHG02IUU8-TLW\2G)*5KZ_'_X0>'&'/1/XEQ'9>30E1A:7&)7PFCIA!@=#?JG
MAT=Q,(5#==J6.AY^&7'32[?^>3FQ0MS3W:F3.N,!BM!*DF/AD+'Q"*9'%F$3
M$TZY-(G^"DI1%-33V+P5OS_=CK&H<=W OE[;N^:4NUJ9F2>,BG"I*[@6+%?:
M6T>G$Q'D2H =W_-C$!0VX4M![&J*(W^Y]#K*SN4J%M+(R2229>)>*YUCDV6;
MS'>*F"Y]93K]DIE:F133U![G,UTR==K3M(+QJ)FDA_0.QP0P&7(BZ-/A6)+J
MC,.AHHX2]?;B@):'(4E2$\E[_D"DYTU%@\7O]7L]WZG/'+1+%^+5U&OAM#@]
M,XQ>KUV'0*@5[F'=.4_'./VSW(W#07^8/'[)HE1J0'-T5[RFQ\I&A$IBY2L2
M]==NG2@5#Z/$FZ:4U$ 0U< 4,E$TM[BVYQ/2*Y>R/%?3WMRC]C U7BS,]U.'
M_*<RO#DO9WA1R-2%+%JX42<;-3W7N%^EQCIYL]..U_2YG40R3%"3/M(.8^_O
MY)D%<[A!NM-+W\5P-!&)R^,^/+H2;8V/G_K6Z__HE>Z9ZV]<NCG/IW90CRZ'
M%=?,GU2IF$T+N3-.#%5(=4]A#[OVT9\G*E5^%][RO<>\*/\:_E7[5_LLI6LU
M3R-IM&V!OCCB3\D8W0Y:(Q*/BX8<4\NP(8A# :V'@3*FP]>M9%N!""*0_H(P
M06OQ5NFF3##??E7(]_U!,[ZP5J8E.?+/N=GJ?W^//WW?)XU3=[S]_>"=.FX=
M'[+&EW\Z^U\:/PZ.#_'!WJ=O!\>NW7SWF>Y?;+/][J?NP=9'<M!M=M^39F?_
MHD];>V\[!U_>'C?>[=-F]S,\>+=/]H\_=5KO&F>M+__Y=M#]")OXX/B@(W'S
M7'5M]VVO=;QYUKQXW6UL?2.-K6U\L/6IW>Q^I,UW.Q>-X_\<'>S%7\ ?<>/B
M\/P]^=3Q__YT?O#%G1A,>?P\B;_UH[5G?S3V#K[%[\3O'\+]X\9YH_NVT^SN
MDX.M_8O6UG]"X\*BQH^O%'*NH29 6 @!I1@#38T"/A!+))&8&[:VL3WH11S_
MGRAO_EW;C]?C8>W]^P__^NO:OMQ^OJ[E&&,I;[;N%B^UB\BL5X3?-:GNZ;6A
M@K#BUY,O>AQ2/:U<\,C#NCQE41](%PZ&D#T[@7;Q&'W?+SWT+PZGAV>-S:](
MFA"A:(&$).(T! 0,PQXXK2P1A$ANY-K&ZWC=)A&S$:4&;8^BHC5*+HCK./V-
MV_)QSM!<4/*O,M5N2\D5.25W+D2!5Y&2*V E*;DYJ"$'-;RTH(;'@_J[G=>?
M-M_O;7ZJ[32W/N_N?=K9WJW'O[^YD]#Q! -^TVKNMM[O;&WN;6_5=O?B'XWM
MYMYNK?6VUOJP_6ES;R=^8$G'_D=A$>J?QF>XI/*?)9VTJ%PX3)4+"[/3GPO2
MH/"=1OA__BM*6W_?)>F;E4KNBD3?,+6.,:X\3@:A=4Y$Y4$]<)V1/%A.;W_[
M-R*0[ELCJ0+0R3N4()K#W*R5![&[3*5DL\>)>KHMQJF8S7Z1_[I]+6REG"%!
M]04&."W=OMUI)DNS;4F7?C37]3+-&KW(6</[(-%H^^UPT(]R,!@/S%KOH^#]
M]$$</P5HTX]J0]WQP]DM_M6\QH),81Z( EH1#%>;C')ZTK#V!.QTQ]G_]^)F
M/3W;HFC@$DQW;%-\FUQMR8EVVFN7%L73H5NKP,08%<)V5W>&__\:(!.#X^D0
M'&I]\FH<USM<JY5E'.-OG(U>]4Z[P/4+53)],\(I+I O@/641DG2>#,Q2G:.
MT_,:6SNH&7^G>?SIJ(EW6 ,W6./=SMG^Q?YY<^NHO7^\@]Z33T?[W;-.Z_B?
MX];6SGD3_Q-_JT%:>Q]_[._ML-:7YO'^<;/3?%=\_RR.Y6CRG?A;IP?X,V]^
M:=#&\0XYB//:O["LN?7ZJ''\C>WC9KN!/\/]XV\7^Q=OX[S?AD8;GKW?VQXU
M=B%I;>W_:&U^E8I;RC4#,B (J( 4:,(<T XQK2$)#I*U#50G4M45YQ-#YN1
MW')=5P:*].X]P?&3:^27E#M[%65*>]&4ACVU%,,0L((1&DP%!165T!NDL;>R
MH#0TH324*>U)*.UBAM)PW"LDJ )"2P>HU9'-@L) 2&^%PE KI M*(ZHN),F4
MEBGMY5":)%$4(X8ZCTQB,B6XE$9I':!5G)*"TN"$TF"FM">A-#1#:<9B9Z@1
M@$=9#5 O/(@O88 %(QP3&K0+B=(@P74FY*I0VKTUY%#\W[)KR*G58!%N>).6
M?#E/?+]YWDBW*TA E:N):;5;84Q#F84J8Z'S.5T1.R\(QAIHI0F@1D(@L34
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
MVE(&A$I[RHT.F%>5,'9?7#RQ,3NSVHMFM<K5V<QJBV.U&954"L(CE7D@M56
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
M&#J:[!9U2N89Z\]LL%@N6#]-S_G[@3GC]7YXG75Q$(NHMQ98X12@W#N@ [0
M0LF]P1H19E/9NP>W=UX^.\6*52YZTQ^.4L?YIXDJW!MX/3P=G$\%X.2+M#I@
M?OY5Z$W\3N=X__C@6YQ[M[FW#_<O/EZTOGQF^U\^GL4Q=!M;'VGSV)X?_"//
M&H=?+27:.L= W%T,*$W]N+ T@ @AC0S<.J'3/8QNB+QYPM#!?,Q6Z)BU/G[U
MEG++@P/(BN2F$AP8AB P3GFG@F=&I*KK=03G+Y"D-15I:V58UY'OI*Y'M='X
M"+SD@*['T:=^ KT;\FTS\AZ(O!E-B7"I&1(.B) J25"M@;(L "6IH=(14P1\
M(<SJ_(9X[[OK2MD^NW207<AMF2%;/61GE"5*F.16,8 )3?%@+%YT'$(0"#50
M,V9,*FU!6)W()4%LE:98(I;/%+O7'^E.F?A^8_G>AUA?;^UP#9]I^_>J)(GI
M:LK;Q39D6JJ.EN9;'QF(E1?! D]QBC=Q!!@B%8!$:XT0(<Q%24)B7(<W:'L5
MMW^?!<<*V65?'."KDD,RX!<,^!DY1'FI'2<22*-2#8^D-5 9@%7(Q_WS5J/4
M;#VJ#IA5U7AQX8!_J%5W%OF_^MYX0N4@7I$X:M<_-1U_.:F'T<%-TM$3L,%_
MWU?JK'!95IP=JQ*'IMK!;/9<YLI%<N5\7R?*?)1_G )Q Z-P!)4&2G,,D(N4
MJ>(1\SS5!JEC!.L</3B4OG(4/;&M)K-H9M&ED#$SBSXJB\Y(G)(;;)5TP,#4
M7RLP#*2@#@1%C-066TQ8R:*TKFZH^[6J+%H(I7^-=/S1B>.I^$\Y#S/X:^.Z
M5^I7;TZF/#4*ZR-:!H\%7URTN_*^IFT*6M2]\U0[H=<?^6%MU$_0+1:QB&T,
M[9[NV79A8(LO=.- A^NW3FG\"XS&(9STAT7:T:N![^A1^[O_^T?;C8XF[#'U
MK?'>PJNO:!-'<#JZ_2M/NW9$S?@AI_Z;!EG0BXR*F-<6!LD]=4$8ZJ5%RKC@
MJ @V?!6IQF+YI:/!57S)H0=FX/4WH$.<URO=^:'/AVM_79M^M]V;C(BR..39
M9;IU,4*H>#%*+$6*[:>>R7'K(H+]('TJCD0_\0AJ1X-T__S7'?9B;6,O 3P%
MU[SI_^LOO6*#[ZW>D$>)2HIAWX"EI8'ZNYW7GS;?[VU^JNTTMS[O[GW:V=ZM
MQ[^_N9T$GW; ;UK-W=;[G:W-O>VMVNY>_*.QW=S;K;7>UMYL[OZ[]O9]Z\ON
MDH[]CQ3Z<=0_C<]PPS]O'617#PXC 8ZOC51Z>?Q*D@%8H;H4M_75_5)("''L
M'7TR]*\F?_E[TMVRW2O&4GSI[^M/3^PZZ]]*:U2^/29>I=8E(XE[Q[:K\0^/
M:7F]H.49@:=\CZEUC/&M;\-U=.M[/WLL0NN<B-]Z[,_?8R0/EM/;WYY^["^,
MF?>,1*U2PY-W4O!NEM<O9X+87:92LLBCJJOBQMGL>ST8UK;C7>5J6][ZKO&#
M<H8$U:]-\IGOVYUFLC3;ELRK]YC*'3KDKLBLT8N<-5P@$A<7EW+S=-[HX5'M
M;:?_8U@+@WZWUCKQ26*.JO:FC?IP8<:Z2V?IN]@W[G$"[M)$>A5^\E%[5S^>
M6;7I1^.LT=I#\FJ>AR7]IHFMN"T\:(V(B=HQY)A:A@V)M[6 UL- &=/AZU:Z
M\B"""-S-M1@/S%5.W&I8P%N[$POXP7$#O_UVL-7XT=S:1HWXS/B=H_WC9 E_
MW=WO?CQK[;GXVSMGEQ;P[N>+YE9\O]O\UMAK?FM>%)9PVOBRC5/20O/B&V[N
M';2;^".:M8 ?[#5@<^N@O8\_GC7P1](L+.&'9_OI\]V/I+6WCYK='7*P]4^8
M6+\;NY"TMO9_M#:_4F\""I@ ZSD!5#$#%(8*(,H$M0%KDAJ:2ERGD"]1JEQ%
M4529?9X!^V!/+<4P!*P@%9"IH*"B$GJ#-/96%NR#)NQS!Y=<9I]%L<_%#/M
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
M12248,1BV"2CIAAQ$0VRG";DK23&6:6QXINQ2;;/S[\I5S[@K.*F*SP@S0F
M3)-+'+_DUS]V_'[#XM,E=Z#(ILCF5BE3](DP1WW4H3[B;2(CBCDBJ _*,[%R
M]/&<Y(P.!SLP7WD$MO?25F&W_]2>5&/;JTMD.CN*X>D<LKV*?T^J436.K^/P
M4^5CT^'Q5?2#]_WZ+G6SQY+AL3X^]>=2NP82M4TI1H2!/R&.94!668(P9I0P
M[%12:6M;=Z5H?X)'@8("TT4V139%-D4V13;MHYYK3WPKU'.3J.>2*X_@W);!
M"R0PL< ]G4*.<HP244$(BRT5=E.X9_N<9)MRY7><>>T;<+FR7%FNW+Q3!7?H
MQ<]%<T=Q/.XUYP@&J3.,H_&P\N.8-ZGLXL\\:?082NJNUI3'YJY-QB>LJ>$B
M..,#QT('S(3$+))K<\0ZI;V.IC2=>9Y-AC!;#<]K.O:\.A-)?=G.9SL,K\^$
M5NC=2O3.3ZG=N6?18RE55!PIRA+B*ACDK&%(.L:QLD:;H+:VB;DQMRM9&2VS
M\]:@PY>=3[E"F6M+K>CR>G5YH;8LUCIYYS%B.H*E)H) 6FJ#//:&>,P"2V9K
MNVCR1FCR*@V?UA8M+!I\MQJ\&.>3BO+<Z@:! G/$-6BPHQ$4.H9 O)6!Y]SB
M90V^?LNGHKSM=847V139/&[9K&:%$DH%!<140FONO72><1=9DE9&9GDJ5FA;
M][WEEK%!T:@=1D+CB#A-N5L8O$H4JP22LT[&K6W5_B+$18U7Y*YWHL37XJXE
MBKA.!5_H:,J%B()+4'!**>*2*V1$=,A($XF..%H,S%9VN5&%W3X@]5Y;-D%1
M[U:I]T*2 &61*!<3PM@%Q(F3R%!FD)3):8P#%YAL@'JW+_RV*5<^X,,^-9+4
M]</\X/AXT&]"@X_AH,\]!04O]&R^RB*K#W46X%X)N-\OA?\$CTEK88&'Y8,%
MUDKD-&$H*.$U%2P*!;B]7(RJ;8E=)<FS). 6V139%-D4V139%-D4V139%-D4
MYT=+G1^;DR/=5#H9G&2K;]2)7^+05Z,82DKT_7H_Z@\/&JD\GPFE>$-6\H9\
M7/:&8$QTU 2)8 /BW&#D/%5(1JN%CI1&G+:V-Z!H50E3E42?5LOF/DOA?"N(
M> 6NEMCA^D!W,>=5*1Z"T!Q%XA/BR4D 77@5K6$V%[;12FYMDR[(MN#N)NAV
MP=TBFR*;(ILBFR*;EG')M=>V*5SR?@WXQ3PT#&:!%I(C!W8\6/ J(6VP1#HR
M3HQA\(;:%#+9/C_GIEQY1\EHX\');3ECU:5(]ZOMV;Z/'3ON/(L^'KLX[##2
M[=!Z.?]X/IH;#$,<(GB>G_,2'@UZ5>CDIVCA'G#YS*QX<(@8XHC 6@3*+<<&
M6QRES[:FU4KP=[O71/_ZY@W\%V!?&[!_V%GRS 8KG7&8(J,-0SQHAJRA%EFN
M I%>!^]SGAKK*K-\1FBF&G?(%G\DLG<]+;SG>.PM0LFMA[RNA23_N!VQK2"N
M^P?-2TYIK0LQ,R<^&O1@QD;/_YY4X],"C:M"XT+5#R&MLPJP,*G  1H91[D?
M'8J":T.,U1;K#(VZX&+!Q8*+Z\7%Q+W@WAN#N>2&.RLD]E1A[YUG6IF;X&+A
MD^L#S:6&"L:XJ T&/FF!3Q(J<M I(N,Y,$SG0HP60)/PKN#+GH("G 4X"W#>
M"#A-5-A)%@W-P&F3-=*QQ(04D5-'90'.E@#G MN4/'*EB4*>&HDX90II&A5R
MS&!F3)+$ G *+KI"+=>I*L!9@+, YXV 4X,E)SQC5!'/N2%:1)*X=LHSFKS'
MQ1*_,VQ<[ Q.%#5>"HF$YQYQ10BRGE(D(@:)89Y(ML2)7BZ!4'#Q?DZ,/+;
M!PO4<4 0YQ7E01.;-/?414)D")Y=GW65P,=M>?<6*Z,9JW/6@D.&UIV4B44.
M:X^LX2):09)T+D>T"2ZP4NA6H5O7>=15"EC].&1>T;.^6*RWC: +I>>$E&"G
M AD+F'/$(^;(,BP0=Y1J9W@@)OOZ1)=I?(/B5 7,"IBUB@$N8YFGAED2'6:<
M<TRB9D0)BG4"+D&U#\7IUA8(6TAK]#%Y8D-"8.$3Q$%$R-E<8\^3P*)5AA"V
MM:VIZ%)1XKPEQ[*-.9:;<^8]]P6K^GYP'!_#,?=RM*'(ILBFR.8AR6:5#!YK
M"7,Q6BPI]X(Z!O)4V$><N!"VJ3]/9T>"Z/?),>P>N_7F\?M@-"J\>'V\^/E2
M,)IB[*(-$D7!'.(U(^8RHJ!)R(D%%CNYTF*0V"NX'V<Q4FZXLEA@I:1*0=E$
MJ2F+H;V+P1D6L00;R7%/$<<,(T=]0BHR$3#%23.5;:0NQ\L%7%I_&*S >MER
MBVR*;(IL'IAL"E5]D.QDR84K38H,6XJ2,D!/@)4@C2U&*6C-,+;!XZOI2=LT
MMWWNR$VY\@'W27DQ&,*?_8Z?#(>Q[T\[XR'<KF=K6+/APV0TSIV8'D/CE)96
M^"W5EXMLBFR*;(IL'IAL5DEHBTP2Z[7A#*P(FX2QC <KG+7!&L:N8T5<D=E6
MM^1Z.C@^&<:CV!]5G^*Y=3$E!T^GW. P4X-FK#O]<'A.%';.> (8)P?IT'XI
M=LGZ[)+=I3,+42=#4PI(2IP09]PA:WU VACOE?3&!#!+1!=6PLUSXPH*%(0N
MLBFR:9EL5MD]U^"#*[OGQNZ>2UX]ESQA-#?,9#'GEH>(' T!64]X]"XEESM&
MM'[[;)^?;%.NO.LTR%!]NE.GWE[5KXXGQYV3P6C<&<9Q-:S;J7=<[,=4C3LP
M(?/.O5&WTX_CW"MY;+_$NFGR/^XSPO$M4*W1L0#@"@"X-]Y[>L%\^!1^^P\/
M__OOWEO:^^0^#-C>7[M?WCX[JO:^_OGU[8>/^,WQGU\/?GM1O?UM]W3_Z]MC
M>$_L__;V:/^%9GL[[S!8H9IIB105!''!&++2.\0-%9)X8;#1]Q,B&P[\QRM7
MSU0I7N;W!OW?*^NJ7C4^A3WW? .&U47*\KK?Y64$P3QBAR01 N6ZA<A9XY%F
MP5%AM?(!=F?.+RL9>L49BI]J '[( >F2+%!D4V139%-D4V33L@2H^PE=3&G>
M3C_45[T$2^C<$/JUL8->@ADT*MZ7VV6'2[$+S$#RG"!I;&[V$332WB4D6-34
M!ZFD";DT"L>L]1E5!0H*3!?9%-EL0 YQV4(W=PM="F!HA;DFC"'O22XO)CDR
MC@5$)"R,H##ES&W*'MJ^Z,"F7/F LY+K6C7P4,<G@$%-+G+\DE__6'&'#0MM
ME[2#(ILBFUME5)PF%33#PB7%J9#68FV=HL0$'_@/Q"S/.=#H<+ #\Y5'8'LO
M;15V^T_M236VO;H J[.C&)[.(=NK^/>D&E7C^#H./U4^-LU(7T4_>-^O[U+W
M)2V,:GV,ZH^ESB) <FS@TB"=HD=<AX0L]QXYDGLQL62I25O;NLL8ORFA*E!0
M8+K(ILBFR*;(ILCFH<CF/M/E"O7<).JYY,SCBH/)027R.COS(D_(&1]0I$0+
MB:7&C&\*]VR?DVQ3KOR.,Z]] RY7EBO+E9MW%N$.O?BY)/,HCL>]YO3!('6&
M<30>5GX<\R:57?R9)XT>0\'FU5H^*1:2E=@IK1W7V!J*K98,Z&).C;9BM8SX
M.IK2]'UZ-AG";#4\K^D']>I,)/5E.Y_M,+P^$UJA=RO1NS=3:C?7Z%WA( Q)
M2,F0JYUFIR)5%'&>A#*!8DS#UC;EHO6!VI*TL9J=MP8=7DC:^)8RUY9:T>7U
MZO)"L5J2*'/2@*6F'&BPPZ#+B3L4.#=:8N8M]:#+19,W09-7.3^^MFAAT>"[
MU>#%.)]-G)GD&1*.P&Y,'&BP5!(E1XUB24F"Z64:?/U3WT5YV^L*+[(ILGG<
MLEG1"O58"<^3\B3Q0((&_B/A+T$99IH7*[2U^]Y20^(D"1>4$\2488BKQ)'A
M7"%JK-'1L"CRJ1M3K-"-4.-5N.N=*/&UN&N)(JY3P1?ZY6*L%(U>HD!(;C9I
M!7).$21X"%0:'+AP6]N\R_%R%+&PV\U5[_763BGJW1;U7CSQ QMXXIBB($"2
M7%J*K(H2D:BE2Y8)HL4&J'?[PF^;<N4#/NQ3(TE==<P/CH\'_28T^!@.^MQ3
M4/!"1_"K+++ZS&<![I6 VR^%_V![=HP2A9)F&G$O"7(F$91 7LP;)4C"6]OD
MQLUC2I9G>UU;139%-D4V139%-D4V139%-D4VCU0V[?,J;,J5#SA)^NF<SZ,S
MC">3H3_*Y[0Z\#1QN/1^YV0X>#^TQX\A9[ID$A39%-D4V139%-D4V3QNV=QY
MYMH5!3/KF,FK<YJV'#@ID?#U!53>+V>R$:>"8THCS17.AS 8LIHS%+ECP3!*
M0<BY]J4QJB2S;8)FWTLRVW74N12_N 5M7DA;(X%*+ZQ$+G*/.!<6Z: $\DEK
M'Z2FV,2M;2VZ6BW'2%N4V%(T^;[RUHHFWY,F+V2H*:^58<0A)KQ%N8\F,DDZ
M1"(FTC&.5<YT:+\FM\_YN2E7WE&*VGAP<EL>6G4IK/UJ>[;O8\>..\^BC\<N
M#CN,=#NT[@_[XUEJ;C ,<8B:1?DS@U4<!A/7BYW9DTPO@ ?^.:_QT:!7A;,/
MV[<I7#Y[JQEN/F&'M10DA,B3#H9;Y4(TP?DHK;'O=J^Y&]0W;W+;"O"O#_@_
M+F6X64J$2(HB![LY@KT;[#$3$O+*6^>I"TR:K6W&NUCB*QLTWJ&+YT="@NO3
MU'L.]MXS)-UZS.U:B/2/^Q/_"F*_?X!>)NUK0^?,U8\&/9BTT?._)]7XM,#P
MJC"\4)LD"()-T@39E +B1#+DB$F(,LZX\2P)2S,,%PPN&-P"T"D8_*,8;)2,
M6LHH@M*<B*1I--)I2ZQ.VKD;87#AR>L#Z,72,PI'SP0G2 <G$-?&H'R,!R5.
MJ%08_J<\ #2E7:V6NW85D"X@74!Z8T#::J(-4=S3P#D63+.$A6?4>^U%,J&
M=$M >H%%1V(L<T2CZ -!W!. Z^0PDB(JGB(UR>.M;4E5URA=0+J ]/VC4@'I
M'XY!6F^\#40H;@@'/==!.A]HDLK@((FZ&J6_E1Q4X/K6X'JIESQGU!$7D9"D
M[B7OD6%>($.DYD$F0KP 3MV%RVX0<GQHL%EB5#>+427,@- 1I\#TYB8E(T0P
MDD?LG*#&N!*CNF^<6$H:=(0)8XU #"QMQ*5S8(8+L, )PX%2S*Q1&2B(,875
M%59W_XA46-V/9Y;],#P75G=/:+V0%*HQ<9@$BX(Q'('D-'+><L0P)5')B+TG
M6]N$BJZ\)*?@\1*[@IP%.6_@M'14U:D\UEG#65 F>D)QLE9)KZCWQ6G9%KQ<
M2+T5W#-."4-@]@K$13X<XRR8P337=;8)F"_;VM:4=G'AMR5?N"U7UOG"/XTM
M"!'^&ZI/V_]3_].L"S?\Z6QIWO:'LU$>V^'[JC];8T3!<IZ^5:\J=7&_\Q'
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
M--\I\]G.H*8H?AA#U4!!U<\Q41C4:#83^;>FSJ?LTJGAK_/)PH+.?.7"<\)
M7]O,CII?AUODV?Z<'V?4B'$.\<Y_IW%O9V@:1I=%TZU_=#R,M1?)YOOEYVX<
M48-F,=6_LR2^^D=<W4^F!]H;878&#;;"4AJ-ZO4!LV-KW_<9B^K\LWH2GW0[
M1Q6,+CO)P*Z8^9#R#>'"Z,&RB.%?#3K76F9'@S[, 2RI3[;JU;,Q'=Q4U,TC
MSQQ6-2B=K9/\_+5KK;YF<A)F5^3O1W@K^S?SDAC.K/Z\.*I!/1TYN2]_UUY\
M"@>*?YRYZ6P\#P?/!Y^RQCT$&,^F@3U?!]-4MMIHG:W3*06X *I3N!YE\5?U
M G0Q+PH_51*X:^P?Y1D,#469(7J-C%-MMV?H7O] QM$^\) >0%F_SG[K3$:+
MB_A2](UYU?E8K_DIYIP#\$5N=+8;995I=K S80)>O)B"]3D\79R1SM2Y.]L+
MYF]]M@N-OC5A9QM)QC,8[X79F_U0#)>.):/=&>A.YPQFZ9))F\+$%#.7=JO^
M\I1=.6.-;R-5S19U ?9'"Z/),-D?Y&D:C6$$L)$"(, D XK!?<;QN#-]I-F]
M067R];!H BQHL$V',X?^V<J 9^M/MX797.8'RP^9]YC!I :O2<,E[05=//.W
M@[T[JI?A_*=^,)IM>Y\'PX\7]NCK M5]:^_A5<OO$BI13UN-X6?:WNQ,@_[*
M%&&>U"Q8%34@SLR*IHE:LX>,0;AG/WTEKZDC,^%\B,W0SP::5VX]FOJ:$7S>
MFV3VU<AE8^0V4VWK 'RN9L\-B8JCD]AHPK(VS[:DFH%>NFV=P]MW@?#"<H )
MFK*3NN4=L!480<.-<["L%^=#B%?\]&0T<RYE6<'LHUIFQ\!5LO]I[MX =W^>
MK97O7=S]]@#GQP?K:WJ#</'QZF7>Y&6,FI2&3+!"GN7,?6:[SG@ I&&.,S57
MU\SI>G, #S:UE!J:/&<-P;!K+I6)4Z9MH]G=X;+9>.#K3V<XE2:]5 %3M!=H
M6YV)D0GD%#R;>]3YX\WCG*O2^0 S,XZ]7@V9.?X9 #> ; Z;#21K6'\T'?"W
MXY-+OL9+,MMGV=8/.;F=7IW<7O+46Y$W7?+46Y2G?FDD]KO)FHN9J5XK8AEQ
M5CHN(];!,N63,P0&0X.[*N+[7>]VFYF#/\I^A!K8!R=3LM988><[QLML7XWR
M\V::ELGOE#I-^M-M*^\^EV_9%QUVTP26J:D/?S4,9#2!?^K[7G"^;0S].KS
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
M_BL*SKWONW>$BJYYZ+.#"&QH7SI:HFWC]H$OCAI!H($K"6/X]3=K+0F$Q(P
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
MUGFN(OM&X+.PFG\KDI66C40\9X9/U@]BM94ON=C522Q$T\=^=TS6-9F<?&/
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
M??JSU>SLGDXC]C;8;4W:;.T=@N?7V:1-:$\S7PO>7ZYTL'?X[72WLP5O_)!
M _SZH6"%> _JVPAK43[Y058XA6!L69)16\GL-&TU2>"F9QVL,.74*\M4U((G
MET^-A+33J<Q;S7\VFSO;7[8VOSZ"5/O.MSUWFOM7?Q##23MNIXO%,ZI^L5BY
M[2^]?#(I*%>2&2,Q(B97J->PAC3#"<6D=9 NB8##3&;[C9SF+ZJJQY,Y\G3'
M"J>T0A@9\__$,-8LEQP2CV-H>(V<?O#.'I/3K^BJ-'3^F>=D53+U+&GRS]18
MLY1I\N\S&_Z%D][?:'7'+_:T!LYMS$]ZOF2,-UAQ[.T7%)M75,6%&05KK3%:
M:H,E.:5YG)$U.J7YTFEL?,/;.XWS[8TO!WL[G\^;A]G@^DRVOX.!M;%^"N^"
M-_W3FCZE:7[:/6WN?!:-\P9O?OJCW=QH4##6X)YO8F\G'#4V/D"_H%??_[PN
M%=ESHEST%EDF N)): 0^(4.&!I9@$5/,Q,H:(:1.=)5P5X':.P*U>8655*#V
MW* V'4Y"K:",>HI$5 )Q&1.RF&O$A=8V)0^*B0&H,5$7XJ;=YH4#M6=(G%L$
MJ_)[KW^$P'T][O?R=O""9,0M# C-W;+*X[W5_;L<[0J%YH9"LPEOBF.#B:8H
MA'P\'K "JTI9&%Z,J?/$$^4!A53=/+U&:Y4@LVB".W?KH1+<YQ+<:?-!<@IN
M$4[@"3GPB:+W2&/PB8*DR7DG1.!@/HBZ?KKQ\!9R8)Y7Y/YH=5N#@QAJ^[U>
M>!)KX%M$F;F;!^/A_I1'NT*9N:',;!Y+D-A3!_: QIX@3FDN+.0YLC$)C:EF
M$>?4654'7V9./LH"[:V\=\&=NWE0">YS">ZT>8")IQ)+D%3A'>*9V-,8XL%:
MH(&X&#%5=&6-F3H5<H$$]XWN'WSJ]P8YYFHD!D_9/ZAHA9]D.A0S42'/O)"G
M^7&6-U81[;1T2(1<-)E+@FP"[T1&@F-P)#A!\HZ"K$LQKRV%Q>")G>-FP_N2
M\KG;&964SUO*9[8?H@U*"H(4Q0QQEB0X!DDAI1+SN>RHHOGT0N.ZO";%?1&E
M_(UN3?R5P]=SN:C^S_@^=B9>@VGC GG60PYT+Z+G*_R9&_[,AH3(9&/0.")E
M/5@9)C#DI!-(>^8<S*%53JZLR3HULS9&E8R_Q!([=UNADMCGD=AIBX''0#E3
M"7%,->)!& 2H"[+KF .L3=19GBEQN%RD3/NWMQ>QT\O%NUN7Z0./-,-&H?P,
M1C?T3G)BP+C%3W!>EB[>;,YCLHCH_)KFU/*0MR\#*,^&?WB6(BA-BRR6$4!9
M@P65ZS_%2 S1AG,=0]ZLP74F;\J%?R59>>7=G HE*Y1<E.VN"B7GBY(SAVG*
M)N$Q0=)1C[CF%%"2$*1D9I!QW#A"RRUMBI^<?[ 8*'F59NHBTW\R]_DI-!8O
M3Q%]P6]QR;"P?_54[K)FNNUGEJAPXDM&A?'N64&G4!)"U&L]!R,>A['@31BT
M>Z>U3N]GSJZ]?%[^)D+O<SY:>7. &_J=5L%&U8U#>#(,TGF15?O3MD_B.%?W
M\AD%RU79GN->OTCG[=9L<;.S@]8@_YKO&"^OETM OAS'G&J<5Y_-S1L-8FUP
M$.-PL#J3(?\,F>[]GC_Z_>M)!U;AV7;Z"G/1**;BTL7/?"(+5\S]Y1/>3W\D
M3)@R&*. HT#<.X.,\@)1)4.*@E"?S#T3WA=>T"\3WD=YZ\4*@8> @(\61$%$
MU\]\<Z>MX<&($V4D[@^5]GSY32QV%UGY;S[U7IA52JO4^^5J++_YZP?P!#S^
M0/QIFVJ+E&-_'V:!:IRFN0BJ<;IIG/![X&SX<,'0.C(>*^*&*L?Y.?=+_@%?
MJZ#H^C+R[-[#[DF#[)[_<;"W\>&HL;'+]@X_GS<VPD%CXS-O[C0S1S;=/5__
MU3S_S*=W3QKG_QPVOO]QU/CT^;1Y&#K-C<9IDVZ>-C?V28-ND>;YWF'FTFQN
M'%S'WN $N!F2!21=2(AK19 V\&N,+@0O>.*LJ(4!ZV19TIPK[H8*UQ:G]'&%
M:R^":S-E!1T&8",.)9JY)S&VR'FJ4:!1Q8!C9))E7"-RMAY(A6L5KKU97,/<
M:!XDIU0FGD+2TA#EJ??&<4N"SKA&3(5K"X)KTS51$L<I>4<09XXCSD5 +E-N
M)5!0@'E).\-SG2,NYY7R6='2/$XF-^^_.QU_'<?NX'$U&-\P <93"[FP*V=0
MLX!5SM#V:'[6N^&:TZD*S.8&9K,!3E0;+QBAN6B;1MSGRB],@KE&>4K">*85
M7EDC=:'GE:6R0#%*[UVZGUJ%9S[270GP0P1X)FP<.V&,)<B%D"NI2K!&E#>(
M11*%49Q[F+0U2F:#QBOQ77+Q?6JMI$I\7UY\IYT)JQ-)P>.<&!H0=\$A9PQ%
M3"@<E-,Z:="_3"R2^+[18[:OOF^/CV.8BE#K#0]BOV8OLZ#>19+H OD(XWFY
M#%?KANT\*5<RTRH8NC\,S?)82?A/*,L0#3$A+C%&3DJ,> 1;0I! B<XTEV9>
M[.$+M!G[WL7WN9V 2GSG+[[33@ 8"=@D*<!M9V!%*&*0ED$B'4RRFL5 L0 G
MX,ET,I7T+IKT/K</4$GO_*5WV@>0T5"GHT#14U"^U($S+[1 PF+.N1("9Q>>
M\45BD'RK)P;=\)@XNR?G)+W-@]WY#\N2H_7<\[^KD]]G ^IKJ/L,>+DQ5U--
MT4C$+;A*6EN-F ^YQ%*RU)M,JD.4>?4LQY<.>7FU=/ *.M\%=%9!SDL%G=,>
MJI6"2_@?$B'S(082D/&4(@.8R6A1_YG,*<BY@LX*.BOHK.*HEQ4ZI[<'B"7.
M8.H0S%5"G)A<"(\9E)+6S( G(;&94QSUPD#G'=L+XSQNZ&J\'6V7^<IJ$*I!
MN#?;3/X]HWZK6T)S09=0*J2U_[C^;VLW<BF,U JGJRJ3'QSW!JW\@-_[L0U/
M^AE'G <CM3-QXP@?\.4M-L>*G QOOF4FC?BE=&;!>L'5U4&8_#LWLM!.VI 8
MK<=)R\A#4HY'[8EQ(06NDD\_H%<KX[L.^N.6']O]B%P_VB-D$W3L=]L^M6>#
ME=^N\E:TNFAJO*>'ZL8!26G. U)B<L@4'\62^1TT0>SGJZ E]I5;4#OH9^/E
MO^Z>#[6R5A#79'*@C[W__&:7K/'=Y6ORL(R#L6O7R=-=N/-"% &%Q/]+_+OV
M3*Q*8ZOX[W[O&$R9L[_;MCM<[X;-_WO2.L[G8ANM@6_W!B?]1:%4^M786/^Y
MU_WS8._\^*CY?>^@N?/A(!NZ8&CBQKG'V]_W6HW##V 0^_/F]UW1/#_H-+X:
MO/<_!]AW_NG:[^9DN_.9['4VP4#>S-1)'(SG<S!ZQ5YGZPP^H\WS!MD[/&+;
MGW9__<\Y7/?YATP2"Q4B4MA%Q&,NL^2C18XDZ3A)V!A<NBR@O&)8SVZ$LSCX
M%$+RTG)OL+$Y3$X1K8(SQ,1I$J:_OVS_O?EE9[=>^_NO]>9.O;;>W*AM?OZV
M]7=CL[DSJRVG6+<F-6<Y1\(%#,WUDF/.B2MVGQ0W8-M&EKPU*S?<=V?#;^(Q
MDH73_[+\9&!B@"!GX#P>K>)Z[3BOXWI)SC9>RC4[G.5JRK1FK4%!N5:RLET2
M2KUY&B=%5Z6IF)$D,_-@1GH 8<V2\-+<A^?H[?6:O <VGK\R,N8_[?Q7JP/(
M^3->&QA<I7F_ZS3O>1WVYP4'=F7^9VMBM2W%GNNC3<[=[W\.]G:..\WS;VSO
M\$,'KCELTBVXIW&Z^[W9:=)O8N_3IMC[GEF.&[_V6J-[_N?/ ]<)[>W.+FON
MA ZT$<S2!K3O\WGC_,/!+MUE>SOMH]V==GMOHT$;YW]TP$P=CGEYFN?[M+&Q
M_X.%*"3%8*E&R1'WB2.C D;!4R5TY%'98M-5X7D%52[,<51%7E&AVO.?PU>H
M]A*H=G85U:QG'A-AD'0IHUI4R%(+OUK -D:-(.51DF1+@VIO-!#UPTFK782B
MWF5DOO<DV'E96>,!'ZQ?!:3E*96Z)*BT-6-K.:9%$D:A8)E"7&F#+$D1#"ZC
M1""*$)( E5B=DR?78J^RV!=-@.=E4%0"_'("/&562,.8P)@A[#B8%18'9&C4
M2$=LHG9"R)#-"EH7=)$$^(UN4#6L/X /QP56QGOX5=KZ\Q@.%\,]>?97@<Z<
M0:<Q8S5HIP,/5**(K4-@&GAD#<X!<B0$"YACF5]9HY35]4)ESE6)KPME-E3B
M^T+B.V4S8&V-B\DC;6U.". 4&2(X,D(GC#F8#$)DQ@E>QT_GKJH27^^2O(^]
M[F#8/RG%KM7-\0#[_3BHMAN>R6J8'.^M[M^CT:YP9\ZX\WEVL\%89YCG.?TH
M(LZ\1B90C#C70FN/"<&YHB^KXVOJK%>;#4LNOO.R&BKQ?2GQG3[!,"1QAR/2
ME%'$I=/(29!F1XWT";L8(L^Q*'68Z 42WS>ZU?#WK5&#];*"[%,V'IYVF+R$
M #4O^^+&J.0*H^:,4=]F3 RCHI&&!T29SZZ-E<AZS)&G3 :L(M'8 49I4<=4
M+\LYZRML6[P[X9^7=5()_PL*_Y2!DAR/UDJ&B*8<A%\&9!P!*T5' '47HG &
MA%^2.I=+(_QO=-/C+[#9?Z]9[T\Z)^VB.GN(QWT0A"*?XUUL??SK%6R3]<L!
MWY@8;_BY'?,/@%CKG1Z,S'GQ^8UH5@'9_(!L=_9\Q22N.;=(B>@1]]@BS94
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
M8>]EA8D?6F-II<M5KF(N>B4(RC3]R#"3,+:Y,@K.[!IW6*%EB,+;WE3Z>#*
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
M,6?/4NYHH XIQ2GBF=#/*:613X0S%10V&.>2!Z8>W5BF@%X!O0)Z=P ]N+:
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
MUW=Z_;=Q(O.G9RCR6X\I=L'5_]!L5ZPW>;(;L>#3#/&I/N%[@<?L#=$$N23
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
M9;!TI73#F=8-AY=N. O>G:5TPUF@;CA3.Q?<H1/!8R+*9R*Y_]P'3'9G4]+
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
M2;3QDO(@L)$B*0I*8H,AULM[US(4J)LSU#7>CQV]Y2I&0@,*BB3$'7%(PY^
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
M80R?_NU9$B DP( $2&)2*0S2NLQ:T_W,TSU]$9YZYY'FVF77M4#&1HZ88EX
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
M![^V_W/V_OO.^\]4$L*Q5X@8[!$G42/++7![*E0*DD<AT]"2!#F-86M0OZ)
M;-36P+OG-$:7!(\D8JX5!0-33V:(;;UY\['Q\=];NV^WJYW=_WW[H7JST_CS
MP]O_?=O\Z]W?;ZMW3?C[;?7JWSM__?73M)Z,R^6UR84_',^MR85S$*W+Y,*M
MR^SSG0'8NM<(W;^[_45+-GQZR6N\_\RTC]8QASC7N2F!X<A))5#BGD3A'$_.
MWS'7< '*+.SFP@G#J<^Y]LZV;2Z)T$T5 /(^2-SA$2P/PZH%XR4*NEE*ZJ\O
MQ"0WB@4YJ5[EP@<_Y13_V=(.AU5ZGS;'D&"\@8<NJOLF&3*YP=7#<N%N35<B
M&T0_3F[5PZ[Z@T0PQ>F2#-9L:/FP]++;OS/2S'VL:D.JAX[GJ<=*& SV;D(P
M_P2[9\DSF:R]?7V:R6_='OS9J=X<]W))FM-JMP<7:P\)P5;(Z)]=SRN4?W.W
M]])H=5J'QX=UU9OJFK(WPT(W%^_G+@DJJ_6"=NOB0G_V(MJUWZNMP^[Q"Y22
M_.BO1ILT/U5Y[Z;3CR_N+8SQ]*HFZM45IEZ]&U&P3-9_>@EI;+^."*L=7%2^
MJ!A9K\LA/MZ>:ME)7I2=Y%?WV$J6@@?EP%)..' >O(6'PU$23E)*TO#K:U;F
MK>0^/!W\-FD_W]%J'K9S!0"[K'#(EM1V'NT/PW4_?=W9_2,?0_<.MO#.[I<S
M..]K\Y^/)TWZQ]<&?-X\^./P4VMR?QB>X?"]:!QF^_I3J[']7NQL-\#F?D\^
M[6ZQO</WISO;>S176*[WAR>:N3*GB(P^(&=S\!]E!FEG)/SFO+$JXD#EVJ96
M=&IS^*>%VQ<N\3$%U>: :EXFQV)2W!K%M3<N4<L-9PY^]Y'(IT"UNX3$%,B[
M(^2=3B3="AQD5 0I%7D&.H&LQA)A,+)CPMAH1M<VZ3K/!2L*Z!70>PF@][#R
MXP7T%A7TFA,\+V+I*>86V1@(@!YAR.78Z,04"(N@V.<P0+9.S73YZP)Z!?0*
MZ-T&>G73GSMO^7XO:'9?-)N@<#SFA+7$$4R?0)SS'*R@& I*,A5IDHD&L%K9
M=(6!@F4%RPJ6S9' ->-@)]685NC;_ !O9X*^8:8\%D&A9+#*758ETH9+Q)6D
M%) P2N5KFU62)8"\>V^=W-*HF]"Z_?2B;:/,;0_VMHZ,U[R6A>[(^#__I2FA
MOSQ+E_9[K;43MWQ0N\QEFYQ[K#6".FEIPD8YS",3QDH5@R!4)J=@\?E!"][I
M7,([>0C*(G*O1>3=E./3$),(UA@1*O(BHA0R5AC$N*'..Z$P3VN;1,V<"%@T
MMFALT=@':.RDUTX8IIT6'"D*/W@" FBBB2CW.L=62^(P+AJ[DAI+(_><XI2H
MP5QA88#Y&ZYQ=,32Z/5<-;;HZ@-T=6)UA<4U>I*W%7/?)&ZC1II&!N(3B.11
M)QS,4TO =6[*F^1@9+'\F3_K=O[=LJ[5;@U.P;Z_#*4M(3=S$!2+)6>)4:1$
M D$Q>5/&2(NHCX8);I/)MCR?KOE<0+Z _ P@_R'ZMNWW6PE>3Q[8I5K_UNL>
M;NV\>3?2_:W.T./WYY6NJ6.%7L:<?@4+[H4%DWX]K;B1SE%$'0%:QRQ%5B>/
MDM Z6=!NA[-)QJ8C49Y/]^<4^+S(WKOSS!)_GEDR&,LLL3_.++D-SJYY&ZL"
M9TD)K[$/1.N0?=2:1"==-,180+2@[L]8[FENEBV(>4%58RI2&!B+K8/ED@I
M6YQW2#- +A$9%]1Z A_E+0A!IF.%'U9(:H%V5U=2LQ_FCB^34V"WP.ZCP>ZD
M"S!ARA6E.5"9*\2Y]\CH:,!D=$$8A2F6JL!NT>PY.0''53FUOL> SF*O6[3X
MOEH\X?.!*<*,V5Q4704@3PXC)YQ!S%FA9"+&*7>Q(!<]+GH\CQ6ZA&8]AFI/
MNG"2!_M'4H*\811Q'RF"F17(*B>LBQ'FFRW> CVG$*Q%<]S<DKU.9@FQFBUZ
M=@D1BP3'(X,UB[+$'0^61$83<4$GQWQ,=3CI'0A'20-Z1K!Z/^W$432IQ!P*
M#$O$!77(R*B1M]SR(*E)0@^K@>,Y>9P7)GY^CEM1JX$&]XDN-RQHH*\N)H$Y
M9\(I;G@P=="8"!'?# <E/7 A<6'"/DG!*YRD0"HDC[B*$1G&(E)2&FF9X9+7
M.=&4SY)24R!AA2#!4\. %3C,..>81,V($A3K9&!9T3X\!204K;^7UD_Z%IT)
M'/2>(9J$R6Q (^? B $:8)A,%LL4UC8E+CI?='Z^.E\29A]9TR?7=\Y(I-&B
M@+%%G.0R3S)19(#U&T-UGLBU365XT?35U?0G4?09DTB+GM]+SZ?BR8P2EFN%
MHC/ XT,*R,044>!)>T*)QBHG#.CI%7U!K?L7$&SV)*FBR[:Y4F)3%GAR[K&0
M8,$(20!+U'* (VLCIA%S)H5U*@9];5.-.22>%6?1O!:9CU/.(AV\L\DGI$C
MB"N3D%/!(J6Y-;#,8)=,=B)KL4@[7D6ABT(7A:X5>M(/Y#V8ADQ+Y"2/H- B
M(F<91M1B1FCBV'A5%'I%%?I!;:]*HND3:NMD+)GA3&=M5500Q 5CR$KO$#=4
M2.*%P6.=SIY4 DI^Z2+(AQ$$\X@=DD0(Q"W'@.;&(\V"H\)JY4-:V^37]/LN
MX%[ ?=$23 OOFQ]23'H+):=8!D)@)7$*<1<=TA16$J,,<<E++:G+O(_CZ63T
MI0]=7&27X&/FGRY;.OV]&M)H$RTEC"<"RQ[QAH9D5&!8&4^8%L4X7720VIL*
M6;348\E$0$1HH#-&>N1BHL@IJE(B0&T$7ML4ZS"?LV]>+NG^Y-(H<ZD N<"3
M4Y#V92'MI!N0"RY)HA@9P7QNC,.0-4HB:53D4=$HK2Q(NR3*O*BZ7+),YZC
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
M]2". 71'(SDZ[F5,'9Q['P9PE8OKWP+>R[E6$CU:*_/#SWFMS%>OWM:,)G\
MLY>=*_4*^2J?NE8?,%SXAH3_XH,JW[$51JM</OABI8/[7J'K=P0F)H)5D0HF
MC.*>):-%X-9*23EW5-(,3$078%H<8/IRTCSY# :5CRQBA$/PB#LLD+%.((6M
MUD$[BX//52#P#Q8RD)HKB)+QH7]\=-0>6:N#VAEY:%N=S(!')]EOMM7.SM6K
M7&O(JX:LNC6T*&_7 O$C+1!7M. 2! %C;S_W3V#IO0ON:&'((WX*]GA]W0QB
M&08[V=@>UZ%TW*M-G7,C(+/$?,G+*VY4OW;!)!I<T<O\WD:?B-$G&>:O1_DK
MUDSK8OQ7S*?A_=?/'0A9%?+P,LS_WS%@9.VU'4(.' 6S N^V-GW.EYGQC^JI
MS3@ GP/ZUWJ5G_?\V"N?C1]<BT/]0>UUKU>)" #=RI-_9+,+O@7/-NA/HORM
MSMP1ZG*ZH7(=CZ-NOY6/>3UT<'^+OYRTPF#_/"=R[,319@*^/,6Z?K=]/+CY
ME+$U);_GV'O2)46HB=<R]G._=SZ&(_LE(@>6S5?@$C#$U[9]8D_[:S]?72UA
MJ9QX<Y,/?>.CI33G1QNNU2&[E^KY?5TK?SX*1F*?>035?B^O;?_U8_^_6MO<
MK8$,5.M-]U\_VR4;?&?YACP8EL.VF]=IQK7.Z!\ZER><T48$J;%3! X%$F.U
M@O$ SPDXUS]5ZD9G]"*0T*W+7+5A;N]YPMKZD&]^/_=UW9/F,9845?"/!9J7
MM&;"I^!QP"YQ'.SU&_N/2//.*<1OW=[O>5$L;.]ZMO>6-\[\9VT$3\;B'/M$
M$3<63,^@ PH::^9A#DFF>XS*Z\E>7L;O*2\J6&,5<5Q$KERP&GL8@L94&NP=
M*_*RL/*2714FQ)B8-"AJ*Q$GEB+-&$&&*QV59X8IMK:I;[<-ZBB!'W+]JQSX
M@O_6!#1[XX'/M;/CH3_&=(>4<L1>\W;",(A@9(*,F&^^W"R0EZ+@G.HDG(V<
M"&N$MLG!<@ OQS%EB@@OJ@C#?;Y^]L)0)H1 GK#LJ.4:64MS?6M*L118"QJR
MHY;,089O<5]EP;V?5VYC:G_]B<(Q?BBG_9L$]66'9WS\K+B4UBN7BZ=SQ$&X
M4-V0AQD1M<#1RC 5;K' ''(\1F!L^W7H1\ANB1L# EJ=+*&=.,37>NMW?+=U
MM$%Z#?BO7_5^K$_X3-8O'"2WJEJ["P.K[SKT.PU#T0;V^WE?G?X-V\GUUG4U
M=/&,E7JH7M7ND^XQO,W0_^GU73S1-T:DU.&$EYZ(.GX1YK%MC_KQ]?DOOX16
M_ZAM3U^W.O6\U"?],KK\R'V1+??)RACYAL.O1T:],1NP:&6[?E278W3CD<F_
M49O\$[&8P^^$V<!<W?@UWB W?G?;90G9D(8_Z+*W?R>8*(,U=[OL#PJU_+#(
MTO2AUT3P#_UD3QJY/A7/6+NTKJO3\B*>FKS(I\97GOJ):A(]0T+&V^G(J,L5
M]7+-?&# _0/[72[(NWEHVLX=GGH1<W.>K>%''94U;B:,A/+#A4Q^S"*Y>[Y'
M%NH*_XN3@?- 0V&4@4,:![\=?-K^R';^^9#'B/=V_<G.=CCX=/!A?^?W=Z=-
M^IXU=L/AWE0&SL?3QC_-K\U=+\"XV ?C8K]YML6;M'G8_/TMWSMXQSYM^^\P
MSA88LE/UA*3Q2GB>D-$2# T%UH85.B&)8R*>:D,, Z-VNLO'PRKW+TQ;W_DD
M*Q9H6TUHHY%[3G%*U(#E@H5)!ANN<73$TNB'[>G(.;3=TL&X0-L30MM$>K:-
MT@3. C(^E_S7."!M&$/!*0L+%&4N6*!Y!=H*M+T@:-,,J!ES/$3B,J(9);5V
MQMJ$O9&<U="&SZ$-%VA;!&B;+,P3K+:8.(V2XF88;&<93B@YK#@CEFF&US;Y
M]"[$@D+;G)HQ+2 0W6I:7WBG7T0+ION8ELQ1#>0K:2EX<@QL$QYHU$E8Z95S
MCV):#L,W+Z(WZUC-Y:C^L!0H]F[*]M1&)LF\18FFB#AA'EE-.=*2<I:="Y;5
M#8,EF2XO5MH,++F*"TH2X=E7!/\IX9V5 3.A"9,^:DX>Q<0J*O[8*C[92X0J
MB5D@R%('1"5(C8QV FFB1:3 7C#'6<6)ED7%5TW%;1)@40B5 M6YPH0.2DB8
M<T<X=83H1S$UBHH_LHI/VB+2IDA=4#"'1L,J'B32G@HD&-<<)^PLBUG%S34U
MG)Y/Q5_H9MY%>,R#+(X5;G&ME65&"85II&!/6QT%!G;*B78\P!_%XE@^K&I,
M61PT) J6I$0Q<8FXU0[EQ0@1)ZF@(D9GZMZ$ANH%:E5=NMC/1<65MRQWNR(X
M>6YM<-:YR$C0EB1GJ"H6QU*J^(3%X;'@>>L:\2@8XM(P4'$7D3%8TV")E1Q4
M7*X+,[-3H:CXHJDXH8K11+#7N?B7839B[8.@EDK/HA7%XEA&%9^T.&"6 < =
M02[Q"*NX!.W.70JL%33BH*D/+J_BG),%4O$7NL=Q2WA]V?5XU("ZB\2:W[O=
MD/,-8"K."_+\%7O?6C[V=WOP:,.1U<>[R62= E;W JOW4R8'&) Z)>R1\4(A
M[AE%EFB.F*9&)VF"BWQM4ZF9]VJ+_W/1]'G.461%GY]%GR?L"ZU8TK4+ :O<
M@). /@/Q0-H0+%5B!)1[;5//'GM1]'G1]'G.H5-%GY]#GR>-B>BII%1RE 3&
MB+/HD&7:(*H#(3R09#&#]5DNDCZO[N;%;EU!MW]C\>:2@E2"61_#8KJ]LD9Q
MY\P/@3]>T](\4JJ41XE'L)"48\@(K!!.WINH<C%K#8QJG3&^+/&L)52_H-L"
MV8\%W9X0W2:SD$CT+D2&,/; +T,*R#""D=-1&RJ49"9F=)-BYO"8@FX%W98'
MW>9F31=T>SITF[:>A7<R$03@1@#=F$ .4 T9FYQUE#OJ:NY&%%L6=%O=?;K=
M&\I6792UZL[#\AZ]CK%YFFBUN9KP??_'7G+\GKOM_?:J[_-Z. <9_G4HPK_U
MNH?7!&<4O)\?WN]-V>J.<>,=H4@J&1%GP2.M%$94LT@HIY+FEN<4\'ZZZ?G#
M_*5W5ZAGWATI@/C" 7'NYGH!Q 4$Q GS/N$ LRP"$M2">1]S)27E!8K,1L94
M$$ZY&A#US'5&"B 60'S^YWU."[\ XN(!XE1P;C32V2B0B#D=$%.&K!,**2ZD
M8<$:+TP&1*KFE0[X^(!8NP1^KBLGC[>3&N]@?G/M[7EK9WV=UZT!#-3/U!5I
MU*ZL5J!J:UA4&U5_Q<&@/>Q+5L>_/V7M^ ?W-=@9-FZHFQCTWW6&O;?_J5]#
M#%LPM_9+K+_<MH/XFVWU_LYMG>M&2R^ZTOSNUN>HK7 <&X03 P+C5$(NMS;P
M2@MNC02PYG>L-']CH?*G+31_65%^6"#]HD-E#D<?:\Y\V5:NK@5_I>M@W1;O
MQQ7=+QLB352*/QG)'K)#X1M>$(7<W"^!_%WV%8_6CTK:W[48_'-4?E=8/:3R
M.U4;Q)A'J7K.YE[UW&QP\; J]4\_5H(WE))+,MCR8LN+K5^LOOGK!_04> :;
MT&R(.QE)UQ/96Y[EQE!KLQ@U\Z<?_'$;)"S?8\^E0\+R/?:]6B0LE.9>_TA#
M.VB^W2[NLV6]<!-=T^IAW[A_N=[/FT!9[_R.[O3@+^(%GMNB]2L<&:3U[[55
M.EPNLFU:?Y8-U*JV4(L<%CDL<KAXK['(X0+(X0_(QKGWH].M6\#?\CK+D:M^
M9!&5<N1\1.7^<:G/&1AZ5W_%=DRQUXMAW"E^E_7L,>M3S1;^_^C;Y7=]M?=K
M$>Z,]U3GJ!$1N8%_F8V*.NDUMCQ&_8.@RGGV"C\O:]4?]([K7LT[N27Z[K[M
M7+O;MMJ]PX>[ZD?MYL'^U[V#]S#&!FL<OL6-L\;)WNX6WMMM'NR=[1]\VGU'
M]G8;=&I7_? CW?G]0ZNY_?7[WID_W=M]?]8X^W6_L?UAOT&;!SN_-]N-@[_W
M&V?75Y'!P?OD/$$V8(FXYA29 #\$%5+P("DA.N^J\]GSU$L6T0("]*JD$<V,
MFL?] 'A3(]9\H9,^%W#^,$RA@.=]P7,B1E-B(Q3U!@5%&>(\**0U5XA;YGGT
M47J5NR71#?G2>L$5/O8#/@8($IF/V&+NN 4DP=&)9 Q502KLS ]BN@L?6Q%(
MF8QRU"+A$*1%$60!\>@\<B;DJ"GAA0]6!)6K!JT+-G-?DR6#E,+'"A^;!W06
M/K8ZX#G!QY3S.I?ASS43.>).<S!F+4-*,\H4L#*30\0UVQ#SZL*P+.!9^-@/
M^)@D.F 60^2>\:2<#IIS:I3 (F B^0]22@H?6Q%(V9EJ)1EH($0A96-$/#B*
M=/0":?@M1!*)<V%MD]!UCDN9G4+(7B0AFQ$["R%;&?1L '(.=Q@\;QYL\<^*
M&Q%#P&#.QH"X,@P!3]<H)D^U3L%2XM8VN=@P2\/(EK",SUUU_\U8IM*#=FE7
MJL[W(SG^DF9"4">Y]CQ$90A3FDO,8S3*C-H3EXW8%8?*Z6*U,KHHJ;:(J801
MQ]PB)T4"4S9&SA*G6N6>Y6(>]1P7KP/ S&BP*!!Z[ZH-*\D(9P2YP@A7!^9.
M)UNLF<0(3X@E(A!G'B.C7$*"6&J\YY&)4&^9\GF5M5D@E"O\9ZUE(V4I!A]"
MXCP &D1.$_5,6\6H_F&SU,)_5@08)C<^.0FP,#"*,(<?7/" + @$4BDQ%F6R
M4M2!:((4^E/HSR+ V\WT9T:,*_1G=5!N@OY$K1(QPB-,4T1<TH1,DA8)D3>O
M(Y&1ZSGM4"X>RA7ZL]9*G-EL"'G%-==*&*N=LXY':36Q5I9]QI<!#)/[C$EA
MP5D*" ?I$ ]:(R>L1B C6(1$(Z8*[*)U,GNOHL4#AD)_5HK^S(AQA?ZL#,I-
M[0<ZQK#W &X&  ]QBCDRPBE$5&#& LQ)K^:T'SA'F%O"MIAW5>\/$92CY0>+
ME:*YJNR/>*6XYTI'K+-E:#BG+A(2/">8L5@V_UX"+DYWOTC.@N7'!7+1!<0Y
MD\AX'%"B05D6K6$A;_XQNL[9O/(PERB2; 7YWW5/MEP =S/_FQ'E"O];'9R;
M<']1J:*4C"#!#$.<B(0,L1)Y3)265AAG*- _MF'F%4R[0"A7"-!:BVNJ@L&P
MG(%]J&@ TS#6Y?LCA95-V;+[]S* 87+W+R7A.=<"!:,!&)0R8"$2#GQ("6$-
M3BSIM4U%UT%,5@\9"O]9*?XS(\@5_K,Z,#>9H&B45U1R1(R+B&.CD(U4(\)Q
M\I)8[07P'V4VZ+S"X1<(Y0K_66L)+D)N96EE$AQ PD;-I!=*,UCM(E-E^^]E
M ,/D]I^12F&L':+2\ER&*R*7?RB2I,+21)WBVJ8FZ\RHU4.&PG]6BO_,"'*%
M_ZP,S$WM_\6HK O6(9:B!YS##&G-(HJ&$BFY,"+ZM4TA-S19()A;X90_D/QZ
M7>_X.+X!6+TB/Y4,P,?A@-IRI7W,01*!PU+O8B)*&>S!1K22V[()^!+ T4]G
M 'J2L"882%]4B(=HD1VF 5*'>0(^J/G:)L%ZG<L2!+:XD%J"P.: <H4$K@[.
M359-E22:F 1BTC+$I63(<9P0)B[%%)S'5J]M<K6!9PYU6#R4*P1HK:54%,PQ
M,!*EXHE0ZZU/.F'C6>0FA;()^#* 8:KV*;$6"R.19RX744X8&>HUDB8 -! B
MA15KFY*N*[5(T:&%_Q3^,\U_9@2YPG]6!^8F^$]@Q!LJ =R '".>E$':"(JL
MP0X#SB5AU-JF5AMZ!:V\PG_66BQADG=\HY64TYB,#9%%8F/VARH6RB;@RP"&
MJ5JC7#/O T?8JX2XU@)9 <"0LV(BI4J;W$X" &"=TYFKOR\>-!0"M%($:$:4
M*P1H97!N:A=0DT"2P@D910+BPDKDD@H(Y$+IH+$4,:YMBD7, OQY8%T[PK^A
M]6WS7_#C_-:'MO>EU:GKCDI0J=$-4<:DUT1?!:J#X_Z@E4[GH\($_TB#Z\:X
MK\A/U>Y^K++RV,[I__R7ID3]TJ^.;MH S$=0_,N??WWLU[^27WZJ>O$(Z SH
M4#4D-M67K!TQ9%I0G>RW_'X%NE6E5L>VJT[=R[CJIO.#H^UUX-@007M#OP(8
MR0=V/#S;E6' M>!M?HV##"BA5>OH1E6/?NJ:@V[E8M7J]X_ARH?VM/IF>Z?P
MT> DQDYU(VP-KS.!6,8K[DUD(AG-'6566LND49P9P"6:[NJR[L%;',*5NP6N
MW.GE(0^ JQKF=CJ[('819F!W'][&?K<=^H!BN1WS!4HANJ0P]>D_^]@?_MVQ
M_YCCG8.OHG'V%N]L>[C7WX=[9Q^^-BG<>_L]^?3[N[.]LR_?F[M_ &S]O?^?
ML\;ISNX7TC@#:-M^BYL'7SY[:0E.#"/K U"K##N:YUTVCH4DE-B @5I-^YO_
MN[*=<%\Q2C@%$"4:3.XY84U4AA(7"%62!Z&*&"VI&+W[C+'1"N8+Y?XSB$<I
MD;6&HXBQ%4X$A0V($;UFX^*_,V8-KB!81M8+ !V"(JP8&1;S<;W8AJG^%BOK
M]UOQ6SW7&>T&HYF"@\ZG:H2-(V3_?_WAE4]:@_W*W@"Q%\!:@>Q4M?#D&\=6
M%I+Z_I/K1"\.CGN=?%"K\RWV\PB\/6H-X,+G2\6'G7=O+I:*+JRE</N1ZC1!
M!GLM?U51@I2.1PQ$,7+N(S%,,V:P<Z"HB1!ZK:+,0S?J'V.1+]<8M[#,^M?A
MN'?2[058\%Z<[+_[OK/[]:1QT#AMGGD&S/"S,S2D1 D*SE'$20C(V201YI1J
M@T5BN715%WC'*2STYPHPFOC-+'WPCJ\(X>@C6.Z[M=CY7FL ']FJ?PQ$PF:9
M^Q8[QW$=M*3;!ZK2ZZ;68+V&Y"Z<#-,-^C+\=$P=[B)Z-C$CE2!>@8T2O7$@
M;A*38)UCAMQ0H+:(WC.('A@9GX7EWA,O$)6) .SJ+'H&PQ*N3, NP/IMUC:S
M!-PL?!-2=RMF3K+/JR!9H[/M?*W!.ET+EH-NQL6:HF:1!'$<P><Y5.[^]>$"
M*<<&MYZO;_,G>>UMM>N[MOKK=Q%IB047A*208D95;+B$UX,5T!&J$I%%I!=&
MI,_V/A,B F. H80KACB-#FEA&!(N !Y)KY6E]Q1I$ >0PEZF!MU:*O_Z'WMX
M],N?U5] +-O5&WM4O>N$XUSO)0MG](-N;R19^>@^B$(1L!41,/_96; Z%*][
M5H& I;Q<$Z&1P!$[0%"P1=Q],?/"ZU([/R9.N,$90FCMY)VKHZ.^SNO,/5O^
M#JZ/OVJWQLCLN?H,TV,>^GSJ8?\RX=-Y9@_._3:9:.2>4PR,S6"NL##)@,9J
M'!VQ-'K]A$$VU[I9?\^4[NI^4FI]CP&=Q5YWZ5VL,V@R;>Z^_TR!U@@)BT+4
MV"!NDD Z*@RKA5=>&B8T$_<N/6HM82Y&BR7E7E#'B,0*@R6;N!#V1^ZM(A'/
M*A%&DA2E4@A+XP'4<X4$YRE*6"5/O=8D-X:^9R8"@VEGCH=(7(8&HZ36SEB;
ML#>2LR?<B"X2<6^)<,Y$#_J,HL_=;J5@R&$!]I'14B:6O,C)Y,WNE"_JQQ^
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
M?)FWD\7G*%AW_T9.\ZAU7!HY+9_"?[RJ\(9@Z:BE*$@!1J^F'&EJ M(BA"#
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
MW9]8)IRTQ@J*ZWF]TCR%!PUE?+-D[Z5:T.5D!T^9,OB'6/#*F&Q>E:^ZG,&
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
ME?5!."F0B-$C[DR"D-QK1%R2AAJB8(Q7UNDJEG1.9/5N#O,ST]CK4T3_NNF
MXY.2V3O<X\J PAS9"-W3G/T^Q]32)5I1F:PN]A)3\*N=:,MT.I<LTK]KTWQ;
M]N4>,'^^@[ES:RB>>/1]9_?K]_WHH\4B*J1"THA++)&31"&;I8UE2-0&M[*N
M6%GK>28$GCBL7Q9Z7@MXY6&]0H%*2M7\P>U\!MP$848'&5 4P4%T0!DRBD;$
M W;4R5QQ6.6<*G*-+&S9LIN_ES:['31*&^U.Y2!<.=%;-O 6#_4>EXDP0K[S
MDE+U4'2[F$$W)TQBUC/$(S:(,^Z1H_G\CS$IP3@KJ2Q0MYMJVB\Q<UO\%>T;
MRSF]Q,G,X0K'\%#^]"+'S[3H/<\.^<DGA+'ZPJ6EEW7QEYH<\,SDD*AG'&N.
M8%B!\ J<D&-4(!8M48E@;9.ICA,\?F%\CDXU1UG@Q:W*U(R#:BKHKUXEP=U^
M7=GFNE)[XYKZ=<GKK+PW69YI5 K[AN+Y=2W$L9Y>8[(:QYWE]9:\6(Q88_+.
M!6&NF9='[P"N$A?FFW=^?0(O*-3<:^7@-4W9W&OE5(TU\ZB5LWB#=L=B+W?8
MTEJ\=UO> CTS-7E^BK)$637B/I6(EGAI?3SKWF&4%]*Q[K&/_9/%<:\\4HO,
M:J69]\PD[HC5,3":ZR$XEH#<BVL+9\YIY^)#_!;A#S]#L-85$& =0U#5:NZ^
M(\WC/;CO^_.=S0V1G_]E]^!PY_,?1_#YT=[Y5+!V>'36_ Q!'-TBV[N?H#7P
M#IM;?'NSW<X!&[15['V& (Y^.,SE>YH?+Y.8=C;]/B',TI0\2M1YQ#W$:D8[
MA82D4@F(U'"6IU2KFC]Z+>]>CO/0:.QYE[4*X+TVP$M<4X.3=51J3I6U084H
MO4_18^%372F8C !O1B*T -[" =[Y5< [VC=)"4.LAPYE$G'",-(R)*1(-"G
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
MF\EBEHA&6!D@_L(XI(.+R%FCA/1.1FZK>9>IXKZOS'TC^*SC*1)K-&=<6Q'
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
M7*+$+)%:&^;<PLWEK[-6RFYW8-OW3>]QW5Z(/53WSQL&'1JZIZX=&Z-&#K\
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
M5M;9JJ3S*OI;(UVSMJK"XY-@7K$K?F$ZPHT8VX)""T>A@QE-P7MAB?/ )KP
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
M^:-;M]T)1@5T'@8Z4]FJ..#H,:,(8R81!ZA!EEB#> R61Y+G*M>WDW6J<E$
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
M9O%TATEA%K65\REFP8(VWB>"K'8&\10=L@Q^Y<0F[IECCC"0\R=960JS>'O
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
M2FH0!FL3]D9R]N"<K )MBX6V:3L_$801(Q7RUN;6LH$CF\LY*V-=D%K1I#E
M&UEE8FGJT-_#DE_?EJ(;P[LZUU\U8PT->WK:[WT#"1CF5IW/V5E\(JC76OG^
MWK:NW6D/VW'PJ1O:@W'#S?#KJ*'IENWG3H-7E5C>7M_>9M7&V6)N%94682F
M1E"%D>,R(F.\X58$CWG6D&[IXMRXUK+W[/HG;L3QQZU:.X\;R [.W* =VK8/
M$S+5F7Y2+:1JDWIBV]VJ!VU[.*AZN_:KQ5/U>[6=3J,?\QG9]3"Y\^73JA:P
M+O=T#3'!.=4RA'.Z_\3!,'>#;6Q4+5E]' RNKO*]LTZHVJ$.1E7( 1^^7E_;
M_^_@\E'7JID,#P%&#@X;'7O6]8>Q>M=N_'K9C15$X:AJ_=KK-S)\Y*MRVU;_
MOV?M07O<0G<S#F/_I-V]T0;SJN/E63<WRCSH5DU:+QOI?EK[<^V:Y:K1&:_T
M\YN-V:^/_^JCY5N>M(?YK)GO5W4^'L+(\P3[RN42SN+D;O"\TT[\5DE4GIB>
M;U</^]H>'E:3=7A^VH,3*PB$S]#Q9Z,X^:5IG#SJQ$LK>"-5#]*KWL&3M1I@
M6\@?Z=#^$ZL6]S?F*$^'BUU8?7GQ=O.IC?PQ_YF:G:IQ\>6)N9%US_NS:G9A
MY>?;CM?"R)UVVH^#;"RNCH[FHEOM4-7]8*G;KL^5=*I^P)6)\V:G[$F5GCQQ
MWO?/JAO!R@.QJ$9Y&F%I5O-Z;8QWOU@6SJOE%T<E:4&ZGH^BX6G@_W1ML #^
MOXR'>DG<_IB\X48W?!B_^F4MW1^D;N$WMS/ /7<WO@@2)6P" 2F')>*&)*2E
M]HC(R(WW*B0FGM.:6B;]&29=&RJ83 Q%D8,99 YFD Z(@:<Z!!\Y9?HY[4QE
MTI]ATBVQ.KI$0;XE3+7@H&]1QA!50B7B0L#4K*RW>C,4\,=_N-IH@ ==[3/5
M]@E0T&U<9SAG_4Q1[@HCN:9Y5!LTW##O#4M#+Z[OR'G7S5MIQ>6N4V/8S8%V
MV=&!%$$GS63J^G9_;>OMQ^%9O[O6&.LTU5U'=\Q$H'$$WW,0VJ.2DZ-/G@\
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
MQ#BN$=P]^#W:01S4Q_Q^/)%>L;W[2[MU='BX]_FOX];F!Y#>';:]N7?>W/U
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
M>0A)<>8=N0E.YA"X*U8)L[XA1=M/6#G$+D#-LB'V'A [XP(0H6I <@%\0<M
M1\70(3! GHM.@9>)B#3OTAI[VPV#&XH)31OQ)?&'1ZTVM(AN67+N6[B29',_
M[ID89TN!P5\1$WI="C-%"*)#[9@+2;$B$S&E""AD(%/&],3MD]D7#JCE4&=K
MA-H(]9[$*QNAWC^A]B\3JBC<UJ6/")5S!EQK1@,*+-AD';JL4CV<HD0/S7RY
MDD:HC5 ;H79(,+,1ZOT3ZNO+A.H1I.$26:B'\B%KPT+4@GE5G!!&TP)IR4+E
M/11Z90CU.[Y_&HS?[_O3^JCYVQR\S)]LG= ZH75"ZX36":T36B>T3FB=T#JA
M=4+KA-8)K1-:)[1.N%$G_'!4Q?;IWS3X>V,2+ZH1Q,'A\226M_$O>OGB&N=1
M2)#3T]/OA^-!_<S34=ZG#_^=?SP9I*.]BRCE9U\\#QSQ3U_Q83S</S[Z^E<^
M"P_%?'B41_<58I6U)08_ALBFW?+9S[V/=5[>^]W,PBC[=\P7:N)3OW_B3\?K
M/UQZDH/!(9OIN=F'_NJCE;+@1YN&W5*.PVEQU*?'ARF/ZJ>H)?Z!6["V-ZI1
MZ_\9.!0Y^\B+,QE2L0&RBP)#*@ELB>4ON[ZQ7:?MVK"L_33\UP]^R1I_N'Q-
M/B(4CB?-_@(R9EAC&MG7#GT23F6##A"LI\NE;*T67%E==QK.OY/3L[I9X#1]
M)D27C4'PUGAK>2T091VOLL?\,D$<^-$N(:N&G,WE;:NWQ^.C03G]N%&R=7Q
M'1<7<';G\E[(;]2GAW&P/]T->5E>'NWET>_4@D$91']X]/']P]T71_E@_/-H
M>/![WCVH';D]_&EX. F3UU2/;6K6O_>'\=V2[HF\^>\>CP=_'/H_\?CEVW=G
M_<U?#W9D_Z16_.IO_[;?W_QYT-_<I>_W^=997_2W7\O^YM9!%4BF>_[EM C9
MRL*L5(4!5X(%"YGY'"1-'A5=@?6U/([^?5T:1L>5K2;KUJ<59K(!04#:]^_'
M^>G%+S]>K'N#PPDP)E_Z\7SNG"]+E9%GRU?7V31]^YRL$9\XK2I?GUL-YS<^
MI_(G$RJ?V4^9OJ?QB93RJV_S)^*K[WWKLD(\,<K>Z++??D^KUE@#7W_[\\M^
MQXR\1B6H;]3^FMH_][KQ;+^X\5R)\ I%OE;OJ<6C?&I^Z:F;Q]0ZH75"ZX36
M":T36B>T3FB=T#JA=4+KA-8)K1-:)[1.:)W0.J%U0NN$U@FM$UHGM$ZXITZX
MJN3D]_):CX;OU^\SB7-[>.3WU_QXG(^^+NMXA<>\4N;=%?:D;BZ,^W@;^2@4
M27_+A_FDGIJ8FZ;7><S5R"]?P1+S/GCPPD!448+6'%5"Y FL1JFD%W^]N)IT
MT;,)DSV*U.]W;[;__6YZG.G=2?]MY#O;>P<[;]/>UI^O-%WG9.OMKV^WSG9$
M__?9U._?]ON_O#IYN?GSX.7VL].ML]_V7O[R9K EGXLWF^].MC:?R?Y!7VV]
M??WAOV<OY"=QH@C4!O@+<\18(K(D C( 1.9+YDR#IW'+*J))ZQL*94]UJM3+
M#?GQRG(8C7"6AW"TE,6A0VFY!Y3H<T%7B@VJJOT$-R&<*TC[-,*Y"\+I7R:<
M6++(P)$%Z2.#&"-S.EA6E(\I)8TQD*$.H'O@;JW>TPBG$<X=$$ZP((3%[+E$
M""G[9%T@]BD\^:*YFA#.%:1O&N'<!>&\ODPXSA7O8PXLBU!/@DO#4)? (%MZ
M/2;PJ1#A<-FSV*5RLX^BF-UO>3Q(^?"(+M0*V5TF&5-4<*JH# )!T>0ERR9S
MFXN2&K4JS8UZ,))1<VZ4%,EA]9N"0;)JC,DLA.(9$8QTNA@G0*YO:($]O3"1
MUPZI"CYVK$HPS@)8=**&/ R&F)PWQDGKI7*J>2 /B=49#T1G R4Z26: (8-
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
M\7=D(5B594XE)E57:RT6E4W<]A9N);!^I82K1QK)R$4Y"]'GA "6K ]%EH=
MX"5(('9J3L5RT-1\>27,W MI"RM8:[8H5QBM/)[)$($;6W)*OM(4R%9=:>5@
MS6FX,R95HUDTVB6X( C3(CL7R:^0S:E8&EC/.!72*HO2&*9,0 9 OP5K@9G
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
MJ>J6W)C<CWRPMOKN4(1(E<EV17T*%I(PE<3WPHJZFTPF?\0S '$#.*DS H^
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
M4I&V]X'89O$8P#?:Y>F+S99\L\9LC=F;RW4VVOAWLYF& 5J!R(2RXB1*ME\
MOEDJG%4#S1>*8\X5QEVT@<_-U%M@C&/R=5RS%C[ \CJ ]4(A+,;VK=9BVN=;
M[*N(GS2@.@VCT6PW3CVS>6Z>*0/*D"(W[1!M/V%&L-MR6EW.-E7MDW6/36E4
M=(ZG[D*0;!*J<#+AI<]]EV<_RO![G..>R]6U)'(8GYFVBQLQK96-&'$)0!Z<
MM(_UI5%ME:SJ40%<-]&C@L\4(#0/VQ)Y?^7GU; ^2N=+SM@2]P/?[4: ALRA
M"-K"MVPU+BX%7GJN2,=Y8)YKS^32J/1^<8FI<;YD,'#)\^5I+33AV':T>ZF!
M?">1,6._<'SM"[_0,+[-BUVRS!*9NNFAJO3=I25:4_-Y-F2X\B'Z!J)_I2B*
M5[B2U?8V^NQ\?J4\7?.N=-$"7?-NO]=1M.:=+F^W'^7M=/TV7;]-.WO:V?MH
MG8E.)J,XJ9UT8G/JN.%!.W[+$J&ZE^ZO!1TRN70R1#95->,\[MD\8/[+>VEV
MZ==/(:4>F(L357Z^TQ'Y-^.OXL %# [.1I3#[]%3\_#XA0?$MP8P"=&]R/5K
MY%<ZOK+\5_)=# *NXF40,-L5_Y+G-@YX":):@*SY@76,:B0883<D7+,:6$S/
M#8)(?"X^B@>WR;4U=$/AAO)7;%Z=%,CZ#W.!+AZUG+@SB!Q(?MYE[)7PR/=Q
M+#%+6?:(PZ;6R/?Z)0QR][,U&'Y^%E_7R,/W:_77W/7DO!(H-/-">>O09B?!
MV'>PKA*26"P^J,7-0,5$U/N>O\0OAFG):SG4\P+R#0PY]MZ<X#5Q7?_LBS:;
MU#Y3.H4<Z8J#6G-N/-/[(J,T3GHN#\)]3<+9+!$J4C)C'Y)P%N;;&#K?IG3Y
M-E+4.OAWIR5OEK1D068WWB/L2#:1>D-V<@4P+^MF^3H!(L?&=Z;R;%9CVV^(
M1IE,G#2_1EVOV/1=N[&T2++W.+0WKVV2S:ACB1$=B1'&(!@.$1BR:;$5L$D*
M$Z$BU7 .P2;)'/D^A<Q^32ON"Y1?-FM2FRL;-U=FLO/;4XY!;\9>V?X]V57M
ME8F$V>F$8!QKVNQ0KRC$QE-M&C0S[YZ9)VSO-JJ4/6;>?&.[%W$,HTXS\@)@
M?H>99_+B)7<G=7ID78S.=@HQQF_31K@VPC=M?YZ+F%@K[S3)E3)4 2.\,!%T
M1;;RV-GG<X(HJ7G=4K77-AXT447>]!&.1NH-@U3S7+:X.T%^&R0V38 FS; J
M2%V$"+JB7)F0NI K^9W]4$4SMX';TV_3X*W!>W.X-1-@:O: '5G/&EG<.<$2
MZ!4 [\)$T#7HR@/><\\J$4XQ*0PW3W:VD07D 5LEQG^@.L#T-=2EPYP:S#68
M;S:/2-1NQS,[@5ZL-Z0<T0PO9D=^!<"\,!%T?;H]!/.'="/)[S[V_%[MN.>#
M1GI\957V)M7E136N;SX70QV<F0K2?.:__1'!+O1<ZE0 UPL3H2*5Z@X+U[\S
M_^2W>"/)O2A6L 9L_WB[I8Z&=@WMFT:U<X5JTZ=[($MN9:"] !%T&; ]A/9,
M_&5-%OLJJ)Y8[&T-ZQK6MXIH30WKBXF@RX)I6%\QN*YA7</ZEDM<F(WL15V5
MZ8N\EUX?/&18+TP$LZ%AO1RPGMLP0*2-JZ07!/@>XR(*\W4P]-B84O+%Y=0.
M&=]X(T4%WJ:IP5N#]Q9QRSS)I'DDP&U6I,C"X</6C,D*J#0  )*_WFBT08.:
M!K7M^=CG[0RH^2 ,5 F# [)P^!9I82*8%;FK7GYHST5L!<RR?Z'E+5E_?%68
M-AHZ<J!Q>M,0)9K;-"[$_1 S-CR'021L3^P@_U8!G"Y*!%-?9RP)3B^XSE@X
M-6^E&X]F#IRKQA53:&XT$,Y!>^##8PJKD%[#="#Z?#IB;,H$#]UH8HE&$Q>Z
MT40YM)5N-*$;3>A&$[K1A&XT40**Z$83VHW<@0?55!X4?:-VA-:G%[I5J+50
ME BFKK6PAV[DG+RBU;S(G)2B[7F1&O<U[F\"\EH*\O#R4P)[5</]!40P=9F&
MJN-^2^.^QOU#@[RV@#R;,L<-;$Y%XZ@J5,$L2@135W2H.NZW->YKW#\TR.N<
M3,'=V!I95</]!40P=<6'JN-^1^.^QOW]ASS50]G(W*WJ1MP/ CJTY+M2W#=U
M,81MHMY3L@69[LVB_S+U*1= XU$L'#QRPSYYL!#;7LE=G5SA!DY?CC55A^?M
M=//5-Q$T=!6%KC]:R"IJ+J9A*!/+J!LYB2A5D?VH&[B.:Z&E@Z8+RN$C?1$=
MT/U02Y66JN6DJFF<T+'-_ #@.\YXKK)\74M2H&B!2T&':)(+Q88B!NK0(0]1
MUW-M<FG;+ *GPG_!WG #+7E:\I:2O&:LSYJ5UF?7^/H>3$"8LYBZSRDHN-BB
MO>Z[M ?&ISI4)?<]>!;,R&'$@\B2?1B?J(T__OF_C$[C<[-AQFKQR>)=RZ?!
MR?V;1\<@L$*JP:TQM;!J85U26,U$6$TMK(FP/E'?99S\$V0R5W"_N;[EV_!>
M+;A:<'<BN&:L9<WZKHII_+6B8:HUJ/9G-_0H,<YK(BXONJ98(3B^U\RAM4G\
M,)KMAFS<[+ A/CH7:2X:'8TT&FG6CC1F@C2[JNV@D68M=HE&G=V@SO8DQ6@8
M]9OO3QEYJ8BDW(C+E>1_KQYOR8T?A.*&_!=F1^(,:8H>F@$WRH!/UW^O-@,^
M6V_,9X,Q&($A]0/$[B>[3P=6PI&:(;?)D->7MYHAIQCRVO+LR).&Q:WKOW;Q
M7%VSYR[8\_;R2K/G%'O>6EWJS3*FUN1;Y<R'QZ];Y,PRK/H=MD2?"]AP#FQJ
M[MPJ=W[Y^DUS9Y8[O]">Z[N:-W==V079LU4]E7[-8 +DP7JAX(*'% .:&/_^
M8H46^>9ZE!R)VG483;("DN5E#&#9,+X%GSC$]3-9F4:1C$JC72J^74*H5-4H
MV*I/C3JL@@3,<QV"6_1YB=GL:IC5!94C:7:-IT=3W%4!(<5 A!-Y-!!"IV+\
M@<Q\=N'#).^Z;X'L=BGU"1NXX70(^":D ])I&$?6\5'[6-XU>8G]R:>37^OD
M.4VDEJ.*E_0B[KM!G^"G\;A!,B7&TQE%0Q@)H\J<_A'1($R"S-2.."@YM8*O
M;W;?\E_$NP9N@'JP3BZ)YZ:_F'W/.TN'?P0TQ"LL81_1" =)OJWGX=&^"D#E
M=%1B#N&&DX'E@[82_T;U@QH+>= &M@63R@H9'Q-LMH,?'B@#5(X#GJ*NP@/J
M43ODS,?)>&-YJ40@P?QK;0>V]Y7;_%C\0?@YC941L(+/0GFA)V>#9PH5RPG_
M[;^[_'0J7P[KA;K.__ST?N51X_SLIXDA]Z66Z%F]<UZL/.<RHU[ #XW.#JI^
M;HX!SY;,"$&+2IV]=Y8I_KF[A8IQ/KDAO,#^T-+36\-/LO#T$M7"%1E.<,V?
MFAT!4=O#D^_,I_59#'AG;O.@8Y]^MLTJ[;LMR'[>F%^0?0G OV@D@+^!,NYE
MJ]2^HQFLIRC[/DS>W[\I?Z34^@)$*@17VX*0&=4G?8Z;7[Y?/O_^^/5I[@25
M$8>A-\/<LA9[R 1VXHB+RZDTE$76X41F('K#1OO(.<X)R23A&)7\9UPT6[6I
MR[RD;P7$B<#ELJTH .M;.%U<>ELPA2[8P;!1\ 6X7ABAZ=*^Y?7PZCX.)+A/
M/B!&YC3RX5=B0"L*^XS#TIU9K;P6BG8*$512JLA>J\#U5HU_T!KUAM0<RUK_
MK5:]TYG_]:KFOV'66Q?%S/_E7MEJG*]]LLVS^D5S*5^EI*<5ZS^0FSO\18G<
MEH4QD5]NKAXO;Y\O'\G-]R^_/ST_WGQ]JL'?URM%?CX6,RE%D.AJ_.ECSFCN
M*G9P)#N%R65VK!>NXS0X)?]R/<^U!N2Y3JY8 ![#AIES WQ<9@[('(,:$X>@
MV7/0DK*'9HTR@<,.EC)Q+4@X17,N)%94H7W!!!2MTTH%6FD%2%FTK;E$ #CC
M3)V5S&\NZ!NGSB\ZQB+E0OF_7>JQ4>SW]L /9".LRS,$_Y?Y ;K'RC6>*9@E
M4AQ4ZH)M#2T[S9A0:16.N/KG^@Y>+]R8OXRQC+UWF"_.ZJ9IKN(O-QOUCGFQ
M=L?6K#?:ZV^]A\Z]L=K9WCM>>'O])X;&6;W=*N;<KWYB*$.%FP3Z\P^>&B:1
MQ7+;+M/+7*3.UJ'4RK]QSS?/MP>T:8>^75\NG[_F&<S3H3WS(Z&]SMH>G3.[
M5H'9E=1$?#_L43KY6<J(?U^,.!O)O\U]V;/$%:W-+8HC2U=8+O:TCZW8*Z;*
MUW\!8]H.&0_(T9"[ONT.+8\DC<C@"3'&,3D@-JB$+S<+3.?%KD@<6#1NOUGU
M@&)F2R^EB++]T"F?-@46FP+/[H"%_3'Y5B=W$1_VJR58^V<*+%^X*J/R>\F7
M^ ,K+5 =6P 'M/G: #@H Z#:.+5G"RJ3 5#V1_?E&L9\$^(R]"@E_[0\;*'F
M@UIB0[K3:A([X/M;:CD3_2!BE[MJA"BDM)964&773ML3@9T57RB9&[;'>'EG
M\5?R2YU<6;P+H[ #4OR'8GJO@-YEWYK]WY3-J)8]T"X:, [,2"J?EZ3U<ZJ?
MK[GEOI#+.OF[ZSL#RZ]49;Q2^"U:LVQIX=MA]3WU6<K^Z/XC[2\CZCO,&_MH
MW=S!CSVORK9-27=*.T,EW)3*JBR-&=H?TKI__W7_+5B<%OD59'A,>5 I=T/[
M6)4Y&-H&EVOW2D-L+L3^PQK0@%S5R7<WZ%?92"KI'FG'JH2;4EG'2J.%=JFT
MOM]G?7]GB980?Z^3I[ZUC COOW>A7:HJJ:IM,/KNO*H/77TN^Z.+:]!4J!BV
M,;\8]FF7.6/XOWXX\/[V_U!+ P04    " "*@%96M;Z6R"8<   !1 $ $0
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
MU1_@=U[&VK@8$;(-!A@C/C;G^)T'E#U/(W;](P3&B&;IU+^[@VB3U(A-:]C
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
M690;/=0-*#2.TL#W*5=1]%<4LTF*.T$II@R^AUW%-KJQ-V&,RJ2Y[:O*U*Q
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
MR'O .:%&.\U ]=T;*]XNBMT%73J__O!O4$L#!!0    ( (J 5E;C=Q6\ZC$
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
M''T)-BFLA?M\>Z"AC&IKZZ+</A<?SA@Q?9]FO7C!+Z\1UR=?_/_\P_BCH2^
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
M[U>@?UHL?UA<Y76[FMT=_L?^$^A)7Y+RU*(Y,$X6""X&:,II48SV@KT\SZ,
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
M&=.F]3GUPPD"X<Q2WM0*^>=T_?J:M=>#_S!)5F#/BP7$?@[4!QQ2(ANG>Q4
MX65@+ROQ14!CVJT] U/XA,-YVZ->$:*T).ZN/VPF(<V>SM)J12':Q^AK0J,R
M7H<(2:#H5:1[1=0L()7L8XU58^*^G78@M$=N87[M'!I"8+QMB>Z=A DJ8K8-
M"D)1A,F; L$; TD:LI:QR5P'Z4UT+Z(Q[4*>@3N,XF%U9S>=M?+MSEH?[:A#
MDX5"8G*18&H@6-@D9+0$U\HBFWZ,5_O%IXUI1^],SBW?[//ID>L^!C_WJL@?
M3>0GW>8R.4\*I%&-B-K+Q2<E 77.2KNDA&37(U]$-*8&L.?0(WSB&7A[]@?,
MZT\I_3\OYJ_6N'S37SUAI_;A#^79M'TD>*;]V_Z<7W?/F=C04JJN (6RB0*9
MC3]A56^"5:,O6COV)I0WGW]ZI]:\?K:Y)=@3XIZ2S_2AE_=_TRMO3K)U+M5B
MH/0ZB@9;AF3(\Z:@'84LS0O+'3!_"<^8=F"/YL#=AJM, F!OWKMM]H";YM2;
M:_P4I$L9$GD[O;P^M@@QDE)LT<=03(FDTMC9L!?*J&K\,#+A]'D?NLP/^3[T
M(6F^S7!Z01"7N)XN-]<#=RV"5T\W#116TSF]Y49%D+UO?IYGTU>[(B''%PH:
M'A53J:$S3Q^3O2-B3N=8=\_L6=1;];2Z<6(]_S[-.FM_>8U$V5*LK&@\R*J)
MLMDDR/TR<1/-R21MD8;[+.;1(!G4Y*T'_G35)_N7=5I?K9ZW_LJ$O#F3LPG@
MBJB]=U.&8$N#I%VH*#%KRYT_= BN,5G28=FU1\GR2HW3[-Z>AT^K?Z,O>O"Y
MQ-==B;S#[6$;V8<7R^EB^0LNWTVW-N,IF9 I*8BV6/:SN$D-T254L5<!T6!T
M5&22J@8LH40O93-E +,]Q%#&=*IZ:=:>GQL7)_I?TW2^^GFQ6N'JTPBB:@6%
M*B"RZ=W'>NEF3!13NX)9.6^TY"ZVQ(G_D2?%PWJR7P>G3Z;!@$3>8TNPN1*4
MT:!T;P)F^BY2;J+O_!3MDY+\65R/]P XQG[')9U8GW64S9+Q%)Y$@1*R3!%J
M*D1/ZVTKW%LC!\ :52E&=@H]O,I.D].0B^>Z0,AVV+M+,ZX6(66DI9QB)G!.
M0'8J@6[&*A%=;H&[]L.!T,;MC@S.H]/%-8K-"K(QBWFO#K%HW6':-)V<EKUO
M[A[4X-L41^(YYP8%QY0-MC5Q ]$-#!,4C6*ZB*"\[AMS,1 O4P#E,*AD3<V%
M.Z_G4&S\FO2&QS_!Y&N1DH:K'"UZ:2TDCPZ<;A);J,4/L(?_!4#CWGI@8,_#
MFO-8\0QH>Y_-U[C$U7:T334C\Z9%H<=^3[5 "BX#AI($>=(Z1.Z[G%]&-&Y+
M>Q;.'"V@(</V&[6\R0G8N]<P\1%-(BY#-J:0TT'.9=3].I)S.I@<6C/#QS^'
M(!U3TO:%2,8NT+.1[\:FP$1I1<I34_P2:&),5KW*5XL@G/+DXI)&S6<Y?-@/
M[Y&IW^<./R_ LV-E-W#XT*L$K3]\?SOKZY<^M<L/BW;SQ=VMP:>+^1PWU9;?
M3]>OG[Q/RWK*?4=F!#PAPI#3PA04;-+U[B DJQD;1A^@Z1; Z(J]_$:"6C![
MCUH;S;T=M1_)20FAOZSIZYY)_K1'^P^:PF7/2.CWBK'V!;>:Y!*P*J'!-D%^
M9I*18O]407@OE:NT@&5^B(\G/'],7C\#/3Y+$CV#1'ARB0\$NEWAS^:E7T)_
MAYNM(].D)RYXPMGS6HKH-323AR*,E=&[B(&5/GLPC"D(N!"%3I4,$XT^#G[3
M.C-MDF9Q=UUXYR^N?ET2Q]-&Z>_/GIZ@TJ)HW2!C5!VXZ/O/"+XY9;PG^-H<
M1BD6/&-R_]GI=7Z)#9VU/%V5!2V"^1767:[U9Z7)Z?=O%ZLT^^MR<?7VE$3F
M8Y[#E-M\\A"YRE5LZXI\_D!20K.KWG]F+\R);C2-QD8(N6]K^=;;N^<$/JI>
MO2G$R-ZQX0B8)T>EAS_J_@99GRX<I"@*34ZC!=5/T[5VD(PDS=YBCZP%AMM&
M]O3 E74$8_+RAF;MG2CW<ES@VV4Y? Q/2MFDAOQ]L<;>@NKG!5D/<E=P^JY7
M+>IYRQ&5=9E<$>OZ[6Z)!J*D[VKP1KK<8LGV<G1^> !C<CA'S&9F)O#XJ(_
MW\^PMP.9S1;O>V[31*4J5=:E[SWIGD-$,X=80-3<A+<^Y0.CG9-@C"HW[%P$
M/+/TSLZVSR\&ONRB>][^L=J6>9M46:2NO<XE^?0T8TE T@3=-1>=5$Z@]]S$
M^R*B414J&2D%^41Z"4-^N[;W#1]$8"RJ[U!%G0HM)$,^2/4"LDA*->D<_?IR
M!OQ^X*.JF3)>P\TD^4N0]L42WZ9IKX:Y+=BPP7]]N3JEDI*,!933_?9&[LD5
M- )94A6(*I7,W6J4"?JH"K6,E[ALTK^,OGU',!?+C[4 *+3+LK<YEZ:7:J7
M#K+Q"#1EJJ&S5OD+1OVWX8ZJ'LQX*7J2E/GZJ=XHIOZH68JQV%2D@J)*;ZL>
M P1M"^2BC4S6%LG>Z_Y8K)=QW#]6]+AA-)5M,<E60&^/8T2"*(R$8K5'I9*5
MMSL8<SOO>U"-:4ON+'3D\>)/E>^%MN3N*5OEDBE)R0A*DJHSLAD(1E" K'1J
M6&S1E3TCB@'WF#;@SLK=BPG_DCO)+]*'OE]X#3MDT^NI%9"ID,%4+D.HID*A
MUX)MU:C,?K'S5-!C.D/^"@A[JM@O<L9\\_;+]DYJG_O][\W7]U-Q]7$R*&*Y
MSN7>]<_&NE[L_WOV@^M+@!_R-/SBPN"ZQK0_AN@#ZHFQ/]TWJ.T%Z(]UUR>T
M.+SHR]:W2FLW1PG!QP926A-E%9Y\&'ZER0']C ;GHZ>W2[*:-%>S$.38R>AZ
MLY2^VQ4WEV"-0-&"M?SW78Z'.Z[[RQ<@[@E&YR317\(Y>HGOD%Z8J!B<=%Y
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
M#OI<3DOTF"$P&:&MF;M'W!\!7.%$I1)*B!J"ZWNCI11(FX0^XZH3L31EN+>
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
M7,QKT/+9G]/5Q!KNE2>Y*"4Y"4=XY@OG]/H*XW,HH9@\%#'N M20)P_4KS[
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
M 1CS$N;YQ[/I+-=:7H)X)5-U6=J;HJ:CEVMF"Z\VL [,U_J2''E.T@;4S7O
M'T<U?ARFN3(7@VIB@,C<KY!.IG-<?KJZ^DL[.>7L(IG(01(JC?2NA&@44\IZ
M^H'26K>>I?L G.-C1RO9CSU99S-8R%OA=;WX%PWA,UK3NE7M;8PE*VW)VFOA
MNASTJ+=!@GS-I7^;'6Z,@6X=$'X;Z+:%-K<8Z+:%*O8ST*V0/080/>,V =,Z
M*^9K!YL*U@7PQ?O4*2%TP&39>:#;L%SIHX%]#W03SF0K:W%>2)KI% L+&LF0
M,J@@Y9B*'.4(>@H#W7KI=9>!;GV4,D[9VQ>O+X#FM3B?#+1,T J]1#)X)B$H
M6R E(5M?VOL G..Q6EK+_C8M?'-:7 WS=( V5HG;OL-NS53X&#5VE/\8-6U7
M(1K%,6A@$KUCNKA:.R$#RYE'=! "-B]8&IT:_2O9AF=&#[$/P8B+8O%;$"^.
M.I? &9L*LUQRIH57#+@"YK(P&6SD*%H/17L$T@$4,FVKOINT:"C[L>;&7I9<
M-1@,>]]'-9G\V@GGC=&NQ4(RWNB8BR?3( =/\M?") U)@1>3^SYTQU<0/DS7
M,)O^#V9B M$@;6Y3?_EYNA8&$XTP9/GH2.Z0!;)7HK=,JN1<0:^R;3T)YC%,
M._7I7'[B/Z?KDROOP.9[%]=YO\,E+1QL(C.-7JE@1!TFFNEO469F(@IR"(,.
MNCS&LEY/W,/>TE+YU]IW!I'R -[,Q4OU!JN\ZH1D7);%\K1>1?,JSJ;O-[OB
MY:7O[Z:G]"NOREOZ[JJ<&_7G[IJ8:$\*4^0@J R%U<8V6A$=V,IZR9%KS*KU
ML)16V(^$=WM5:>MNPKO>GV>K%:Y?Q?-!0N].EHNS]R<OYNG\*E2850F^*N<_
MIS5=?L+$T0%N4S L^5 'P'MD@;O K"&1QN13RF[K?6P[3$?"N'UJ:H"!/_>N
MY#=<3[3%@HE[%G0R3+MH&<3@&$H7A*U#MVWK_>TA/$?"H.:B'V L[5W87DXA
M3F?3]:=)*%EHH9%YAS6+RC.+=3):\I9SI:R0?H FU_L!?07$V$[XP_2VWLW:
M-YAFL%I-RY2VO\675JF)3<+XB)[1Z4E'JA U^TZHDY7.!N"B0.LJJMX@OP(&
MM5-2P]:71Z1Q'CT/VA7ME&*@>")WP4H6:Y8EB.2*(G1)MYZ"_1">L89@#\N0
M5@+?]PCLZTTH1NJ8A2I,YMJ0*6M#IN3 @M(F!L6EZC:_]- [X=JI[\Y&N#YB
M'+!_J@N,XVN$ZR7\>QJIMI'<@(J,G!NG0F)1URFZJA9:: %,&6>%3UZ;U,E@
MW+<".S7"M=!?'X$-V@@7E,T.:R6W3E@+,3WSTG"6#0!F$WS,+>Z>/9!&N%YB
MO[<1KH_,!FV$ ^M!"?(2R,ZS=6AE)!**R JW.84B-5=-E'<8C7!;*V]KF0V0
M'?T19C5H^?8$<?VR_O9EA1IB(58ERZQ$SC0WD47R!!F/1OG:>\N;#Y:Z#\O1
M&#U-A3Y <.XN7!=9X"[(!BJON1_5?JIKVFBO R5V$/U(.\4%PJA<<"4:9I2I
M$V[)#/$R9C)(DO7(P1G1Z4[> R;%(W4U8W.BC\1;IXU^G,YFM1%J.O_YSX2K
MU:+47?'B.,L^""L@L63JF**D:;TF9R9,H5.QE)S\C9%A]R2"'GK*^-&S5JI8
M#"''D2MC+L_"38!O!?-\&2N>XFKW8IDNG]ZR?J;W:FZ4U#@TR(64@&2K 4^@
M"O?&>('UPG8M)SV>,W"5C4%G>%*6"0>U7U8FY@DEX]E[F5S&&%L/ZAJJRJ93
M3DOH[$4 8,+7&1-.U/X*LM<]#R5JATG>+*[YVM*)?1C1*YW81_3#] \\D-'B
M/%DCM6$RF5HB7R<':ZN922%AT5;IU+S:[(FE$UL38SOA#U$-_)!/)[3@RCG/
M8JZ]$R4@BS9QQNEHYU:#UWZD#?*P$C\[L:&5P/>=^'G4U'<F@%6Q,"%<-02U
M8J A$M%!Z>"34LV+6)]4Q*27LKM&3/H(?5RGN NRKSUBTDM[W;WC;40_+CFD
MU%[Y))A(HC95T-X*IG@&T4;,0>@86S>=/)6(R4"<Z"/Q42,F+@>C P%#-+ZV
MVEH6)9VPH;BL V8APXURI:<>,>FEBLX1DSYR'"MB\BS]]]ETM?F@58N&H@<_
MKTE4I#OB&W&0$$J)QI:8+.AH72BY8,0H>;3:&C-Y\)-WW&@OKD^\\H@OQFL4
M-A59AS+5(D:=7:QC0LF"U7'3V6:%[C1?H,]6^P">G0^5B\]^OCB-T_GFM2)3
MJUX?>-Y=M^D%+[A<$N,GBG9.;Q*Y6*+.R%7!,F\#9T$ID.#(<D]IH+5WP;>'
M7:D54VZ=/$.I98#HR-\6B_P';:43XXH&4'64*]3+L00AJK,"5"HF.Z%E:M[Z
M>OGL(U+]5N(<P-S\[:P*X%6Y7"B>+Y48-^%1HM22EI=,KI6;=.(JE9G/EDN/
MTI?2.K!Q/YHC4GTCD0^0RG^;3C"?S? +MJOG[X^?KGQU[IV7Y,DY#V24!0=D
M=O.:< J%*92J" 4%L?51T1?C6/&PP>@RJ%+V'1^[7I2H398N.,D,(B&7B:QQ
M[TL]XG3BEM!CIZ&3AUX8/:Q*[RR6[B/: 6MLN\ XOF+I7L*_I]AV&\D-J,A0
MC4YN"R-'G#,-0K!04W<EN)P+ESKY3M4[^U9@IV+I%OKK([!!BZ43"&X0%.,>
M4ZU +0Q"CLQY98R+42'O9+\_C6+I7F*_MUBZC\P&+9:V(GJ+TK"88',M/%3;
MT#)R_Y3U")SC$=T:LK7RMI;9$ ']VT?\9E/))26BC64A1G\^7P1X0@8&R!H4
MUJ38NN/T'BA';0:U5,,0U=-WP#KW!B]':74!.%1*\#%P>\H,ME!E!WKLKH>1
MMI/K0).PVM466S)63&TRT"S8;!AMIKG>GH31M9YUNB>B/)8MW M/^HB_=<[P
M_SN#6B_U;'9V.IV?G;Y>+O)9^GS=1)#"R&+I$,V!UBT 6:"U,LP6P0OM%;_A
M7M^3-'SP,0<1J=M%)XM!!-K0+-P@>X?+);P]A>7ZY<OG%WB*2-%Q\E.X-99I
M5WOM:RH\6C*@G'+<J-!)P7=\^%&I=5?AM7YOWY[-R_3]\\7RP^(\\W/I]!>G
M%.>! 4(F QCH;U$))H53M$0I;>K6&''/ XY*J2V$V-#"VV B09Y,UYC69TN8
M_0K365S\B:LOI+/T=(T^LE)"9-I'.I0XG4<FH0P\>IY5MSJ.1QYT5(IN*=2&
M8ZDVV'XB0PG>X@<XI^ 55.BX3-P8YHJK-X^:.EY=D5=J9;*!_G W1]#?H^I[
M'W%42FXCR(:SI<X/CA-<GBY^GN/R_:>WGU8UN7,YS(*##X47YJVO>9[H:HMW
M8,+9VL!'>+';,,-['W%4ZFTCR &&/+V8I\4IOEW#>I/ANE9E*'GP!3TGJJE$
MT!PP[UQF-BD/-:O'@VSL63T YZL(V[12QP#C!^^!=EFOV '<0&&;!X'M)V33
M3(W=Z+&##@8(V3P,,M7!:% DR]D4VD(A,3 N,2%*2<$;3F_)TR?((Z&:_?"C
MC^@'X,5;W%0F_PWI%(39LWE^ED])V*OU>9EKG00]7^'EN2A-,4*A9MPK15:M
MB^2?*O)E0K*<SEL)V/KPZ05P?/.DH7)OUMP,IID!*C,_"^#R.'Y[7I.SVKP]
M2ECIN"^LF.0('#F^P6KZ,J3B) <,JGF)UD. O@JKI9U*!AB.>X'EXC7I F8@
M.^4:D/W8)0T5=6L+V57*@YPX5T%9E:T35C&E#1*H5'LK8V(A@S3$?H6Q=9/#
M""I_Q-(82^-]A-LZG/R&SJT_ZB;VV:<V4G/K-$LR6SH+,;$(1C(ZN(+S5L5P
M<[3E/<&)FY\\_J&_@Y07K434.I?S[/T:T\DED&!",(Z3W:+)W(VIKL8%.GP,
MD%41M+LY0^^^D/"53WVR>MI:-.W?J=J7,U]/8?8YS)S)0JAW PE;.Q*%8+XD
M0WM% >,5.&&ZQ>YO??23U=9N0KHW^3)@@^6E6;@HSV:S"P=B4=8G^/ILF4Y@
MA:^7TX37NK(V/_X%ILM_P.RL_L/-<*;+'H[K0YKH9V>GF!MU;XX+MGEKZ!YE
M?:/O-*%+N<@$D)1.I8"V+FF3;"PE0KS>=SHN[ &;6CFO#G"=.6HYO9"UL!+J
MT#EM"D\NE5Q4ZX:ND9M:WV!:O)_722(O-MM0F=8C_KKTG]TE_>>P.J$?_$R_
M\A%FU1R<6$UNGI:!22RN'C;DU7MNR1Z4Z!P/DAS @:0US(H.(G^T'1L[-,[N
M2_6M;<$MEW;GGO+/Q?+W>HW7^8"=2<X>N!2!!5XXT[4?+0;ZFX@@+><1>4B=
M#);A,!X!1P])BP/6G[9X]5XO%Q]PN?[T>@;S]<4[^*':H1,GDTI$.^95O9[
MB%J];Q3S,6B%5GA51IA!T'YA1\#OPR7"@.7Y+1;Y8KZ&.=G(E[_\BFS$Y;L3
MF'^>!:"ESM$*SJ*(@NE<;]8#FUB,14$. EP>RD ;98'?V#\",0:H=&AJ;ITM
ME_0/KJQT0B^U@L21.5X"G6AD> 7MD4&1#E*PJ/TA;_:W5_2-YT.H?H!46,O5
M;1;TVV*>KJYR$GCD5H)APNI-**U6L_E:BZJ5 8,^JTYWO>V)VW<NZAN]!R+
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
MLU5DAD.=H0FQ7G':.@9[@&6=[0Z?_E(]Z+).;HTP61N&MDY:#((6HBUG);O
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
MR IZB*Y-;G87R@8JCMI/U6DJI-I(KP,DCF#]N.!(6FII,^V +$EQS:F *TH
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
MR,62;+3%@_0V@RHI0"@R0,'DM301K6KN/WJ%0]"/2EDXB;#/I9G0=GC%JN<
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
M>?Q"-%9KZS8#?OZG?ILO,,HLM0H$3N*ODDR"3R*"B9*)%(*V0G0R3_N]]]7
M<&B9-&PJTKZFV& 0TG +&;4"51S=(KEH4"H*S.BDS\WS#%]AV_^CCL>3"/O4
MN1ZUF\&GR;(N^U=2>[Y/TA5>K@)NKL0LJULYBE(+&NJ0/$LJ4+022Q)!:MVI
M9.B)3A /OOQ<<ST&PL"LI2P:]W:Y1]#_F"R_?,R7*WXLODR^?9K]/%V2?K#Q
M7G8AM6$#II[DC=^DJ8% 'X/' -(X,8!"L-Y79W5*TM)^\1Q\\1Z\LIX[^E.,
M\:4 YY'F4*?%31\AM&XF=:TB;H-9#@,6U+4$CF@1)H%G*(%)'G0LFO[7I)_4
MSGO'[4HTJ(!FC;@[@,-OIZ5$D=H:;@!-0E".>0@^6) VF:Q2+%*EQFKRL\@Q
M'5;O.%X6 _2N'Z:Q38<UO:63]FM>U <FHS0O.D#&SR6=U'C)UHTE4 HZK.G4
M#[72W&+.TOB$R8E7B]M^S8O.#;9]1#MZ.JF3RFO%!+&G.%"A<'!:D=KIDT;O
M$EIN&N/N-:23]I)YKW32/@(;(HR[Q.6**^O00679;%J9M#%BA.)<!9"I3K\R
M5@)*4^=@1;0^<N%DZX%RCQ+TNK6^=K(:P ._0].U5^-IH@92XQXDZ#1Z6$/!
MS8;B^@ WU</$I:RT\)F#44K5'KP*T,H(6>68+8N!Q?)\H?"$:C,V$OHPNW7:
M^2,1Q&TI10C29$W7GI82E#4"O)*T?)-Y"<E&9[L- WGR5>.K(0WDT3$<>P S
M]RH2C5.'KUL)W!I*LO@#Z;:L8S:/2!'N]N FJ< 'K&$GY9<YEI6WOF@FE%;!
M\9*8,=$FH37/[J+;*XX\C/]93J:?KR:++_7I'\J_<EC>A&-C\#*1;07>2:Q=
M[1T963R#L,:&G*WVHK6B]RA!QUX]O\VFGS_E^=?ZT MIG1)1%V FLII4+R#H
M5, 5SAF)))K4NM'Z[?>?X.QI)NO=6^9@O@YANEPKY0^M=ZUN,QNX9G2/THXC
M);M8!XZV'8CD2D*6K33-#9BGR1HK3V,X'+3F_:F3*[;K>C_/:;+\!>.ZM*(J
M98;5<F:/8+Q<E>0P0"8D!)N8\U)[[5OKJ_>I.+WAVTC.LZ;\'L!HN4O1]8BV
MIVD:R(Q]B)[36+''RNI1T1_!Z+% 0#==8F@*E!@%*$YJ.QEL$IC@7ID80W"M
MBQ'&$_X3=NL8LN_#WT'\ZM]GE]_IC+M+W+8P4V.QA=0<K7+M,4^''/*4@3FR
MV)/)C.O6\9Q'"1I?J3Q>9O?\XJT8/H!R6:^WFSSZS4!I%EF)'K)P1)'1I#G)
MA*!=BI875K.<&T/@/A4O51$XDM\#I#7<I>A6+*@+70,I _MH.HU"<*S,'H7
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
M4=1J9N\!$#BCA&K!HQ%!TWEE-(,Z:A1<=)Z."JO12/1>#M#QZ7R0>QX)U:<
M;A_)CYY0K9@H)D70#FM;M1SIQHH6/"+/Q0HKV$Z(]*4G5/>25J^$ZAZL'JO_
M\\__3);OXG+R?;+\\7ZV6-:IQN\6B[S\]>LWG,PK]4VZ01_TGB:)B<>O<#>'
MT'.19!21)3I((L>2)0]:FVQB0,,O#GKC<7?2QTS NXK+JSDAO+Z3CDSZ79Y_
MSS>^<:]+[2-'!AG3%A2* L%K!*V\-MIFS*EU14\7NHXZWNZ\ .O#+VMR97W5
M'U=UU\W*+Q@GEP0=^N0LY/<KI_E%D4:06>J 94R@K*)K@*X D/2MJM.2XFY4
M9\^Q=R !XQ^'S2%RY^P;0PX#V/-=&I:A3L[E'(#Q&E)*48+3)M0&_MRG0'9=
M\QCX63:A&PQ 0PECS$RS6)@O@A$ALLYV$$Z )ST3LE0J"<>QO:?P?#+-!D=&
M$[8/X,SX*W[)Z:I2=(<%[^Z<?QO74!(QEI#JT#3N0>50P-L0P2DLI@A";FB=
MU-V#O+%R 0:'RE B.9= _$AFLBF\U-T#*3%B#3H.:%0D6UFQA")JSUH[*UZV
M!WHP7)[&B]P''V?D@^M"]IL7^3Q1U,@9=P@$S@C!BGNTGLX<(VOEM4(-H:
M%9GC!96@Q;QDY)Z'%_D4P.TC^=9>Y(YM 9A*WG"5((7JX21F  8;H*!G1M3F
M:WJG%NR5]&/H);L#^C'T8?PYN99OM**=O[S_@O//>;'1C3[-[BI-ZZ=.\C'U
M]V.2-YHC>Q!^[OB_77%<J!B="HX,,H4J"RM]2LXGA\ET\G^W(G0$MSDRE6WB
M'#)+M?-%$. B5\!MP"@8%\:UOG&'=)MOW[$]0:JT5E+B%XY+95 SD%%RNM5T
MA*#JV-V23;:<1V.P\4KO4W&F[JL^*-B]\8]D]0!^[SM+_BLOEVLO!2W\9B?^
M.9]]GU2E:W$1T1AF;:2;I5(;LH+ HH2L?;3>64^WS)!;X$D*7R!H!A31 .;,
M77:LS_ +KC@I(8A@0C:@M'+@,RG-A1:OM<R"-1]P_A =+QT<A[#[Q,[PC-E'
M[<A^*O1%J:(!M6"0=(Y%<\.4>W.&'P^3H41R+L[P&SO_;L+--M7+6&6<@Y(D
M[0?26\GH(AY:8B>A(Z+@K6^M1PEZ#J[G7BC815LS:0QP06UHN4XE?9J8@?S
M=P@YC7>WH:!V(7 TEP<7O56:^9@#A&@+:4O>@A>.@8V&^925CZ)UL_H11/Z$
M6W0LB?=A;FL?Y<<\S7_70^RZ927FS+DKD+C3H+B0X&KFI4,4B-:%XG?._[TY
M7G>?/+Y">0279ZU8U+K'+UU&DT2+FN#EMK@KE%(4+<D&7HWBF  -%Y#1%A/(
MA)%%=!38SJ.?L<2.85+[9/(RQZT*<3U,Q\90(G)(-7M/24.K5"@@H4\Z<L^Q
M<P;Y_:<_6\$=S:J&%MHZDO!YF>.7;?]FB=$$K/CQCDQ%;B $$6L]A.1H=.'^
M20?ZO:<^6UD=S)J&G9L6\^7%^]ET,;N<I'5'GFK]K:YGIYD37F<PJ!/IY):N
M9T,7M?8^6:*V<-G)+4NON*6MT$\WFLK^M[]4HZ41OQONTH<IVM96=Z"IC\'2
M&PNGL%=:R>A1D1_!X(;7ZZ.T\61M-K%F@2D/JAY.@7D!Q5IMHY!!AT[3)\]*
MZ'LLEC%EWH>O ]BEUVU4M\;8-IAO99!&*Q!.ZG6)8E Q0 J6>\&XI5NML86Z
MAY3Q;O1V<IJU9_(  ;CWL_FW&1&6_YA-[U8)JN1$5DP#YX50GF6M<. 2R#07
MWF>ET+0>'+^7F!<@_S:,WKO[3Y$S<_7U*\Y_?"CW/OSN_H<_YE@)3B2.+_F&
MP3E=>X06L])DGL6YD#Y>KLW8<MC)PU'.D+WC@U><%%SN?.9>)5,G\CB4#+OE
MX8RPB!%R=%3T67N!8%TM(U1&@<N9@6;199N$=JFU4W>,')T'P[PE%,889K)P
M$ZU5^ 2!2P=9,BMX80YC:_7@&475^R"A4U2]#[L'4!3ZV,$^*$3'&'C/*JF1
MOE-T;:90A/3.%U9:-[=[KE'U8V RE$C.):K^" -7=AA3BD54&C*7?N47@^ 3
M@LFJ$%]K)FAK#?4)DIZ#DZH7$AX]F(Z3R "&["?ZW X+-II[%\(&BK/O)>HT
M,?>F(IP-R?]1 6*LDCJX!+FVR5/697 \DA$658A9D6U76D]H&1D83T3F3X.+
M/FP?  ]UG1]*K>7?NF-"T 595F!TX'0?NYJ[: J4')/D+'"=6^/@'A'C:[2-
M!'3/Y7$,=UN'^?_*E_3[S__.4[(++U=%>%^)L;3D5?^CS<"4#:'<"N<3)V5;
MIU+5,@8N!0]!F%BB#)CX3J^5/7')/F]][G(?ELUCN;ZN!XODQ4^TB#)9SLIU
M?GN9S6_]_0@OU0%O:>)0.G9UNSW(-#J!R6;&A<I284ZB"!^R#TEQF2\.>%^+
MOA3TP/>K0LC/>1I_W)A;2":SYB)!S-6(EKQ T!E!)"NL+D4B&Z:A\1Z"CK[
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
MKK0LM6V_H:44M( JJ=4,PZ1\YJEY#\^'*3E50DU36>]+VCJ<YP/XW.Y3M0G
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
MI3*<DWT_G099YDD9,J1K:@8I:61A,PW&%^>\CA9SZSOK-*CIZHH_)6CZ"&/
MB,QD48/'D^E53AM:Z>#=7+W.1[IB2=M"+^C$U73KNLP<I.*="$8P)5OG7W8@
MZV2^KD:RW!.]:26(TY5!_)&7?^%E7H0?='DOYQB7=3A2TQJ'QU\Q4 %#CW7M
M5"?4<T*@32R3SH+.A[326IDVS!;Z^8'JA,=?=F0^[62!GS_/\^>-1K;)_?[M
M.F$F!F[HGS$H,@E04DM2L4B7-ZB83:NI JT#LT_1U*R4(,3 I*M)J#XF4-P8
M\)G,21MDM-Y*Y;O5=SV+4H*FDMY;,M"'I0,8YWL6N9D(:;(5P9/%:&4!Y:T"
MK-VM53&&B<1B[N:Q/Q[*H^;*#2KX9@P_EP2W3Y.O-9^PK.8RESS_4/X]FZ4/
M\[_R_/LDKMN>")-ED-J!X[G&YQ,#@K4'.M!EJ-6):#MY=7L J0-9IS+JVT%@
M-JPH!E"9GR!Q&Z'H0.1 )GHG D]CIS<7;S_X'"&;DP&)U. H+ K0B0Q/%8RK
M2K^NF>\<91:1X<@'SPE-]O/ 3Q^1#(&;#7'SG-XM_YQ-JN% A&_3)K0L/F66
M(#%/5F@,$ISQ'%Q)S#C/8\#6YOKC%(VO]PX@QEV@M)/! "KQ+>H^?,_S6X05
MD[.K*A\BJ7S*V0(N) 21K/?26>=X:_-G+S$O'!='<'[( -:#><?!*"-XYK1&
M9TA18Z2R*2-!HXS&1JVD'*S3^#D5<0RFU[9C_P"5L7>3^+H0\UHK,GH)ZM'\
M_$.X/'A%AF':Y^(UB!+IC$J$]<"9AY"=*\4FD5-K;\FY5V2TDW@?Y@Y>D6%4
MJ@.B&!@DM431Q00A> 0>,Q<1I15Y)VOIF51D].+RHQ49?5@T?$4&J0\Q9#)C
M"DN*-$I1<2@$6,\8XTQ%0N7SK,@X0F+',&G0B@PI?=%>>I ^6%#(2.T+!6L:
MI%+<JF1\ZB2M<ZK(.%A0![-FE(J,Q'1BM?**]G,@W4[X6GG%P&N/.M8*$<$Z
MR>H<*S(.EMG1K-J;%S5B /IC_DP_S^8?YI//DRE.TV^SZ>??)M_):%]U*;G^
M1"%V3>+D<J@P]>&$#![,;L2CG9"WRT8[NCA#-D$IPUU)*0MK7+9*&A\>#7D?
M3E*;('%-0?R9UC.?XN7[J\5R]C7/%^_ND7$334O.9LPQ@922T;W#:CO\$$$X
M;T)B084!FG@<1FNS0+J,SG.%$;#4?N3!E-J34P WTN:0Z"2/0ZUY_$-U%&3L
M#;#W8?4 WL0_9M-X-9_7=+AU;R=#:G"4)8*6U?UA?0 GT0'/=*UHS[G'UJ+?
MI>&50. HU@_A+HA?<KJZS->>L:[L6'O05!V@E$M:.3VKWTR"YS) L%E+)P(*
MW;QWZ5$4CY6O<1)PC2C,4V=ZU(*5:S_/O_/L\QR_?9E$O%SY>.I"E$(.J%TF
M);F6+:,N@*YX%>APY;R3]_N)BKV]!)S*VSTF &:M!=&XG'.CC]XFZ28<]"11
M#8MY]Q(R?C5O(T'-AN+R:! 0TBG+:MY_8*;:O0:<$!%,U$$H+17?=><\!]$_
M4M,[IN3[,+>QQ/^8S9=?WM$91^1L7!S9HF1!>\C*51>'U8!290B..>.MD9)W
M&MK^A*COOWG<ZLU&XI@UXV7C26'O%I,M%265Q&OYN8[5!5:R HP\@4:?#2O"
MB]QBHL?-&Y^[) _DW=Z]>:##[YZVO^)(SNGK_UE5%#K$2 GY>7KU=5,E\]MD
ML>S@N.MA4=07+FZD7%_=SQ_78 G7?K7C#+=U-_?K8_U=6*R*2AH;6_O><J35
M69-T_IY<7I(B^NMTB=//E6TK3?37K]]P,E]9!FU7TNF5H_L@GI#BKH'7AV\#
M. M^FV"87*X*Y-YOG!C#P.Z1%QW;,SY&LDK3_1<T7L'^]XR.L:>E=J_C^U-,
MZGLS;'Y=OP1<Y/_K__C_ 5!+ P04    " "*@%96J;?0V\39 0!U0 ( %
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
MA7;^KLJRE*EH%S8%G4[>GCC^F[_HA0R2>DM)#TH-/VLEB'5Y#1L7-(#1!+B
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
ME<%SKYT0Y(K$/E-8!$&J3,1B^G[I!'(VJ]??KM/6T<8%(ND^<:67F&Q7PAP
MZ% $*#J38<5)1),A4O5P<!.]E3=W41OV9J/Y[+H6/WO[C__*OC(UV=1T"\ A
ML^VH*(? =6/<ZZ2-TKT'";TRV5/5= L#R?OQ$7\Z 9[N%;VPP7QYES_"3S
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
MNHR_X>V@0<93!P?% :[',4\A,K'MDRZLMBZN8/0A\YN&8X;>+SCVQ'Y F;2
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
MQ(TZ95=LDJ8 LM"3T^[R"_X(JP$H.@/*!".8"[04XGLD>^#K<6K&(F'6WFN
M1H""@"P^7EO]C]Y%^#.=<\<Y55,*Q3V)Z</V,L(=O1Q1S5N,Q9F2AKS#\GTA
M0_SD*%NGGM8%UNV-JR3,5+.O5,90V7XR&Y1.<'WO_2[KD)8QF#%IE4Q9BUMO
MH',*[92.,7-5K/^BLTCWV^H5!ZM.Q)/77#':A@K('3H,H)B(D8-C&5^>2&8N
M73\SA9=IOH' KVLEY"\R2NH&!^C?O/-XBDKO>].:4F#7)6S.M6I/:DRRT32(
M:((-\O42"*ES3V5>N:;GSA\SF)6SVVX NA<A/",*WL*+=,5@HC-9KV#.TK!2
M=K1-3Z-$=2G#VQ2QJ*I0YM3YKUZ+#]@I[=]8:%+)L*=,O5;],$_[[*+LELY_
M<[]I<Z@\F=BJKAK=]>DW(+3QQR-K*\NS1=2&U59RXI[7_L9H7$K1.@N6KWHK
M)[3G]U,+.XE!"W_\KE0M6G_ MX:I8X:/PW*[Z59,@OG4A%:LN/NL9FV!\A.9
MOO*1/*%BB6<_?(?U?"VF\*U',VO%2EGY]HO<A7*4S^,)CY_0T8<PP7LM(QEB
M7_Q$:2T9L4-AF4(IC*=9-2%%!@K$+B$2XGUWZ4%5]CO4/=2@60&O732.@[!3
MVD!%_)0WLS27=*5RH;9WF!G 5?)!1ZGJ?<1 \=5C!KF6,C=LDGU8]_C4A 05
M$[H-BQGF7AAUJIM,> 8)+:W*)D!L[Z0!D!D(BV \0M/K@8E]3:@GBL4VO^F6
M XV%QA7%],;[\HS?5GO'_@9;#B>9#M)>;^^47-<@GACU.H*TS6B8M\W(7+(:
M&K(D%U#;FF\2 7)6,\/SCA0-QJ)(-6A\SFW3H@4!88,%WY[,</K3P@RRHHN<
MMTEUC2=J+3PEM@/(16/7&I3P6S8^O)T"]!_$JNDKKLE^[.P$K6A;QG"P&:VD
MRCW%A]J-E>5'W>A>MQ&GNF+)JI^*6B0$8K5BBE)#1(D^(;2NB2;+QR7S)IQ5
M:+_EQSNMT )8"9?A%\+#Q.FX<%I)V197>/Y6(0(3A&M8:X8+LN,\X!N7DO_
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
M\CD3F'"76M[NW0\TUE@H$ASW+0@ZA&U7)/;KY=0$D2IG+#_5$F]M99M?-$B
MM\6\Q U:USG6;WD:.]=4FJ< +2B\B36F'VLP-BY^5A)S'W>98WV(6;[6QYG%
MKRU<Q6.AH98U'#3::,U!9K52:(KF%]NGV,@3UB%(>*&=0-7]G0@TRH)OMH7#
MC>U"9-\,*@C(HM8D,NC-/<-TJ;?;KGH)JB1X?FKA:*QNB>YPDV:;OKV*PQ,T
MO$->_X'^5NI"RZG[IN"=[BHP4MCSNN-<N!MA>(M:2$U_#"-T^)"R%'ONQY+C
M%[IJYW%MKZ\=SZ'C"8;Q%IB0J?X[:S:@4G/ZM9SI&]/W- <FPE=7YS\4R+3F
M*8 MC^FZ1?/=G0I>[XB# "ZQ_2%"=;RW<IBO9/*?N>3?RSN\'D-O83V\VGMU
M0"O)>P5D(V^SR%JKU3CWT"-#/V!TOFI<WN;G]O05--OL0.^;$*!8K#%>PJQB
M!B.Z)'<455J\9&;J^ZR!_4WY<S@*W0'QNJVGP8]9W-5=)B03%,3S 2AX3*M(
M]<.)<Z:Y\07(GFEOA/P*W^Y[[-E;6@7>>)9RC"O>2=\,3V_A3)K22'-&)XT;
M21Q0RR(I%XX^!#23=>+LUO*&P>U[H!-7C>!-R0CC"$?S###4XM:>2JEW"YM<
M[9-V*0-CM1X=';YJ1]\QV$#)V2P"N;-DFR.NF^>W[KEF<;?#<]H+PW,0W0XN
M;90=8$42)SX/ACC%5TE)1H3,=H536VXJ<9A#%%=\^&I<K7L%$\EW'TWZ[W9U
M>BB8PZY?)X#(9^L7BD_/F0RN986VO[89U_:5BM^:+%+9Y@JNLZ0H1%KC:QN+
M()?G\DO6-?>#.$DHM^O("NL-7T9P]J?UH-R;KU .%B=.@URDLSM.R]/,MB+$
M"N(2Y:-[V8+/>$Q'>X]XTCA6;%T?3_$9C^.3\JQ7'ND+G)E)"HSY X\7WYWF
MMCSDX(C24'@1:G)LQ?$=EP<ZY3-7PON)<B#I.GRVM\>?4J;<O#C=%MJT@<>O
M3>Y7^F1AGK6QIVK:OI6]7.TCUXA3!)<_;V!IMR!63#\''EL:73=![M^TR:I=
MU.HC;R*TY8N"EO;-0J?N+G3&HG0?QIO\%ZT^O_G;3;5FV])4Z^YZMS"?I:?U
MO?']D[N85P *\'%.;I.P3(/Y22X>*'8J-;KP@-:- X/EM2=US@2P)=/>-4D-
M?D%]D_$R2MGBN9;%DSH^T(KP7V].VUBL7[?UV5ODK@5S"N96!*J-?3ZFL X,
M=?XNF:_>4LU3\CAG,C\1HE@T,'JJ]Z E'IR1SJ+[UB'NO:/\WW$%<*>;#F(K
M>B,E/DS_HJRWB_F^(2TUR\CN"B9TBB&REN,Z?UN;PZV%0T<6J *9(L=K^MCW
MY.Z; H\I.@0;WT0HI9W2FP"H"M]5U!^45$TLR/Z ^=< ^+^97.EWSM1=W=>Y
M6IQ^XC&JL?+KATA+3\K$FTVWTY%O3X4:[9PJ.@KVD_XS+[W[)RO]^YP4=&:0
M"]5P4B70/2O/F:QOKER?. ;R2D361S[UNC/NMOGFE'XH'XPZ16Q-)]1WGC[7
M*%-P8Y@%X<^6_M_:@^\/2]:?OL+5/8DGZ%77F55_#VXRB$RQR9)ACH-E(2K=
MZND!>)# -$]N>PD%F3)5UA62QE.KH3F$)9H=^*]AE$GE#<;D'898INN(9#O6
M#1WK#<]^_H'W<JZEN^RI^#.R,-:'O6ANB&6XU>%A)[<B5$FH9OH_(_"%Q:E]
M@YUK07O%/EAC26+V6")"CJ\Q4GA0AJ\J%[Q)L#QG*K^T&\4(QR:QM] T"@EQ
MJ_B#D8C-DRS5OHB>8*\.&N2LCF^4"[^'506=,_F=I4Y)55'HQL>=6^[;@&/1
M^18N_Z2C3_^D$M*17E!SKUV"SCK??][&+__<A='_K$VD1B8G?4_D:^O32:U=
M>[R\4EZ5E>48TN/YH'UX)8'&%A@'J87&V]@X6<XO;T7!KE.S;@-Y2OTMX(83
M7W2E#M=^Z=($;A4/"A]K,+A-8;-GO0N1G?G TBUZU7L']U@/CRK6</7H]S<>
MZG#P;A7K_-4Y_1:SXJ6 OV!J0-'\Q$%B+)F+U<<YE7+UYFC0JWWIEOK^6T3#
M]Y7O0CQ^?N>DJW5O<LVP%K5IA8%9%"J_-!W&<BBIXE;W7*<,VR A#&_] .CS
MCN""J&#^I*Q^4+>3)W1]@!TW)&?D(!B7&R288UE[/#D>R+^OWD<[''G5U1/@
M:1?4L_;$M">9W-3P$AE*A;R<3::%KW;BGCA<T]PKBDG@J1E&8)39[?C3JHOG
M&(YE.NV@?-'$,$5H\((W>A'I/0A=6]S.D,EH-I_W-=N&O.>)B1=0>@V_5OM[
M--7])EOPA=1-2(IR4N0L,KPWO:;/8[\D_6!=6+EBC+3C0T$YK*D6ED@ $+-I
M"]1).\,WFIG8+XK3',59]&BJI'BJRV:/<!_5F1H$*YTBLZ@5!:!SB47.#&=<
MJ)M_VTPO-YM.<Q%4Q4WI;=@@Y]B!K=#;M[T%=_H>*W64645(!"?0EO>M0^]]
ML2:LRA\,^>E^GNSUZYC$L.F*(2QTAY'B6L<*TI32WJG$A.4O_)7X%-X*P8MS
M07<;VS.EQG.1V*78DEQ+5(=(W>ZEM+^X7?PZ_LV+I@L.BNMM9X^V6K=3(),A
MHQD&&<%MC!0OI6M<3B0>/-&]UB##$N!4OZ 55%VUS(O4S4=XZ '%#V"Z(081
MK[%+1\#;DU_97SQ; "KLC:*VWQKL@@6?FM3CYB3Z>S['0P4<'L)7^^1;_C>!
MY=KR'Q)K!?;OBZRPJ]&(:/2W508.W;/FO?X3_%>QN.4.S\T&"\,:C#"HBKGR
M=KW?3E'<FM'><#1&9;P!J0W(PD>K Z9C@LGUU/?Z,TI@U+:]VI)#8UPO*:>N
MVC5B^\/44P6.^J?@X4^POJW=&RK/CU4#,7I5XY(L^96ZDDB]1(G[/@B<,=!8
M#">-6_\N.N!Y@5)Z9^X\8!H%L?[HWP!VZX$^7""8[>>#*.DK?>=,3&G+P5/7
M43.FJEHRRVA/F9".N8,N[[UTRB]!KZY/L]QH]Y<S,JPQ=2V>,0AQ]X!*[].Y
MV(:L(_J-U9;<RN?7Q[*EAFQ8CXT!T]%):KD__H%+5K:]T+!WO(, T<8?)C+F
MNWOE3LMM'^=[6ECY6Y>.-L/-)(\K.(*/C+NE-RRXRWI];0430_M6</)1=#!L
M^(?=7W[3BJO$S<-:R=VMJSIL8<#C->;3,I&HPNJZD-5IO+(\M,R3&N_1MTGJ
M-&J:21KO4!1]^CE^^)^W5C=S ALF*H\-AD_#B3]5CS](7R*$MD\MBJ+DJ4 L
ME6,\XRJRU1U)X.6^"^  E]?/ID91#<RPPPB<$?8^=M[;,P9=7A(3DU MH\K"
MTBN5N5)$D['Q9='4EI&I$A",<L[\7G8[9-NLQ==9):-$3F)XWFEV]&H04,+;
M=/8G),%'!;(NF[TO )E\8J@^W"2OYS:" 7D5$B_K%]\:>4KQ(X"FXAQD@NMB
M\7H(!OU ,<^7^YP)I_9FO-9>8GG*+;/]L&<>"M'/#_#V6U ;V8XH"UCT[)JU
MGU#\7?LQ76#0+3N>HJ=QEN5\27;2C;G'$G7L^KZ<-8/-TQ6LM!7SUZ"RO;JM
M\CO,GL9R#(_TT?J=G6<'Q !:EF_ KMF0*ZH#"A404((Z.ZHSJ,20.KQKYA<%
M.</"(B.C.L3EQ)_(?:Q"770C0/J5C!&$W]["$9X0%$].'>&T^WE4>7N1:BU-
M;ZSH\ER1]9KNO.2BM#+)3,/K4>D:A $997\L.ER-(>W&;59C5"3:#H$!]0!5
MH$J_R//J\3=%>\46[ZSR?+D\C8Y@##J@4]>PT7:+-M/R?<%/D49+V2'HE[(*
MT]75\N"^/3/T9>QMXH-YA=J\0+[-T>';=7M1C(_+-4*VU]D,"V$EZ[R5I7T=
MGKMV%]1G\[Y+8E<,E8.H+O$9T$Y%=&.R,9D1[&HT6[8(V8T T5:EK $7ZF__
M01K<1_-VR/6KA[^2.R(&1FH;A(.5;@!5+*R'XD7L!4!9WC4&=3820TB/'AHT
M,11AFV^=::3KIZ5L6G3.I#L5[OP$52P>X%KYM>PJL4V343S5)PO*92QQUAA8
M91D;'.[[!<D%0"%.MD=";.4NP=]NQ2493,D8W-X-EBK[8>@P+BX!?.>"Y]BG
M NQR5M3?J-7BB&%E,X0QE6MK7@,DVOXH,39$2((K4K;I\56E]8-Q]"FL8W)0
M+F)Q6E,SHJ9  N*]^^"EP6K&27R-CS9;FR]IK6E-1J/TQLVNQ!.=Z3C1Z +=
M^.V4N8[DB?$(E56<0>.'U3I$':E?,1/SM9 1B\3 1M;R'2!WJ;=FH<(BS.,/
MS_[!L7SYW-T!A][.[Y "USY+WT5?<5>@)4ARUPU@/@_G=SL]"5&-6><7?_01
M*WH%\S40I2$L\";3-1Z6>S>BK5^&S501R'TKJSA-) NL^KH*=-#;%?_+Y3E/
M.?< 5("]KW<42WUEJ>EM4!K_44D-L6KU>3)&WXW0O,2"[3,*?9-!O;*>N#2
MMEX."=<X6BYN+=)@?)%+^<XO=IV=OV-.\@LLDA,3-!PDGS.]+5+E+#Z;TSF:
M58P$R6_,)J/Y&M[]29'\3PHI73(XR=(H2;I]QC[?8J[TOM\K>F_4K<0H0Z^
M)K7VH,*V0@ 3]VVPT5?R7+PCT8A5A/3=SQ ='WC[R\M5JQK_T=H!G,-W7-DA
MVSG+NPT3LZT!G6B@'O!^2P1_OT],L?8H.40LASVM27D@!6 05VUKJ\&@))C-
M]!,XOU@>'H/+696%KD-RMH3;4!':T"NY@ /L_I!:X8_$T[G%;EX6DY4<,*C\
M\T?C;%/$Q%U,Y=@^-T@,:<?,Q?6]/IQ4B17!P*Q6B=)D.]]I_@QKO8O$W]:C
M<G S#A7PP<$Z; !PI-31R.%Y:2;$5902J/=LJ++)J-,10B-QP59(M9#JVMR@
MG$0M'C?D5XC=&#EDV<);!RRT1W_38IURU=;'Y)Z'580^_'KE#4DWG6ETJ=>5
M_"5=%4FBX)I5%L8<@6F@QU7XFV1:Q$_GB*_SL)>ULR1")-04EX_KUH)L]WBB
MYI8CGXV*5EK/9/3I/ J9F@UMOMELA/J%]&=L_9N%!+<\]QS/PH.5=@QB3M[Z
M):@Y'=T #Y#G"KTLU+/0VV:'3Y.3CT!?!/#!TSA.]\!\_<2VNE2PJ;1 MQ.!
MWCR\-%&;ZS2"(X!!;L,E0''=CZ?P3&=.9^;HN:_1)/NB+*_>@A=<[439<6XP
M:5\I[7YA3[.EM\L!K\DI&\UN4WKUVZ .8]!P*<[4SGHYDX)3-IMT4HBS[NH+
M!\N%""@6E2/5)<+%PJ.*Y7YS(4Y&5*;C952]C;0K.+/%]JS]YJ2J[?.ETXMH
M=90Z7P.CX%(O-3ZV,9:QL3K3K5MY>RX SY05A]Y5%FN+LWO14TUU>:WII:>D
MMZ13R").W[C$*I_!A]/YQ<+Y>LV@@[):AE#>;G!J ZMY3D #\ QGRZ-&0^I
M0YXL^5![SIG0W-*[U%KRZ"TISCUQLD=3=?FT+X!2ZC4Y='.RG$40$-B63(];
MU9)ZCL/Z^^&X\I>&\<D[.0M#N]GW>V@Q?4:G]2><Q\;O+9K0B\\YBQC+1]IR
M4!S=08W&RZ9&G"F>UE3:\9KXX2O>ODG!?T?NV_$<>E=[UEBOY-SO/V ,ZP4L
M=9DBO"@XZ12!MPNUI(11(':A_0ZGH[_%AS2V14X;L5=89&?_O/MB%4$:'=/1
MWP-%)\+F%A/OYHI.=/5 *QRK9:%;VZ]6_+6,QQ-M89]0](0X>45*\_,S(Y<$
MN^:W%C#K0*?99"G&A]*NY-/4E;491\N^17#^LX9T0'(;TBO-C%1;T0$T):N)
MF>/T^$/U!VVZ[ [U@'T!D"BQ1-<"YD2899.*FIM)-VC0\E %T;8GDBB2B^X0
MR>5H>P_]"_+\P_Z%'Z9NM6I<.PC'$[AA[IW]M%J+R^0'*MK69KB<C$JQ[Z2/
M!#7.;H]ZM_$?]Z6+D]JC/8)E*T ?ISP7D,H#%6XB@,V[.^7^HE0+" ^B;8M\
M77)C.:40IN#KK<$3K9W8!!8DUI8LP,V[I1T;7A)-%WM2E/V6;O9ER4/6NC.D
MK3/,=M FA8V8)@'-Z'0,S@UHAC?'X]Q Z<H"HC%%J%;4IU<AZ,PB5ZPW-LCI
M<)#R#VMDS2+92T*T<PT"*/'1R\"Z31G^].KO/07K&-2S  /<N*D_<FB:!9:?
MDR?OV,L%,Q '-@5[XG<$A]J\%M+VHY)V&[R_,+6,G>J0BGCBB+U%4T!6$C9<
MQ_P(U]W: 17(=2E7*]S;(ZVGM?]0\U\D/O(W,>3#CC:3/F=)'OX\]#"D9H=[
M,*>X6[.YLDE!8@&[E9)RK^;W;A#LE3]KH% 6[Q_X;JI*XZ#JMLV-^_/0U;!7
M/$_6U6"SN_]ZB?^5 'FQZ!3E-=AL=W*+E)<HSW+GJ._P6K'M8LC+C&7Z_':X
M7OA1ZHZ )O:_F(HICE+S2^]@=]DEFPT2:UT K99K2#Z1L@NS*0>\&I.4TGF_
MV>U>,^]"5V*W8EZ)@WN+FOI7=9J$INZ&/)TJKTEZV>)KV<#[;<O?ID&0UERR
MBMK.EJ"7I7+%^S%"(2CORF*TG;G(^T2:<5)3HIG:4_\_BJ18W?8"#F$VN([5
M@OAQK=Y1&5Y5&U:9VX49H\1 'B-T'UI^BA0A/;J:U\V-37.0+,%Q)5RQ_LX%
M,8Q8N1K2.AQ1^H94 DJ"]VFS^5H7.QZ,S*ANL^DZ3/*8KH#"0?[C!Y.-!ZH[
MP/>SY'A?31+S+9:5ORYM8?H&3ECL,U\Z$AZ;%EP7MGU,*CN<4'WCL-AT93^S
MHAMI)?2;^>\1\+3 :I'ME>[!?'>=^1>%L!6ICSY3 15"@B'$G<G!S.(>_9?1
MPQ^_F"ZIX<W?#@ON'6??S[A[*V6F^Y6ZC(S $Z_ZV-4(V9>*O5UK!N)#3W'*
M'T^+L&]RD3( ,^\/6U@85EE.TT"F74*(V@Q2O38ET7/Z@[>S"5'9R=HZ:X\_
ML0#L.-B\7E3E.)>Y- G:!^R4DG2;CQ%G/<,U*X\#$5,&@8* W3#R5+PW4$TY
M#'1DS/,&5@UNR'?V/@C#ER,V23S,:T-#&;Q*5U?)2_$))11/F;6R%BO:<C1?
M0LQJ5\KVZD^';":-B@"IO39+G[*(ZRP@_Y!'7DDF)17$BD#BRLXYDQ5'K^]M
M5W.7!IT5XT_D\5;O(N?*(9_@<R8+M$J*'(Q22K!;ILR8CG4\Q*J$W_,]=)XO
M[E._*W$<-4M.<_P9UZ(MR'!GFX<J3QB8U]3T8*9_?CC99]_M95YB'S<)=BQ>
MSB37(O*>\B^I=!>ZJ=\P7 W36 9^HDSF>0S*]AMSEU\PH]' 3S:J XH_:=CF
M74E<?1X@%I,+C>(:_<?]A--U$<*VS85:_,)GB@7;Q+:!!Q)457H[5F+D[?'>
M$K-UEDW[M;H)C%7%<[-5T:$5V^Z'<\K#1QA_C'<U44_I!-.7ZP"H]H$7A89Y
M#[+6BL0Z"*6E]4]U+> 6I?\AFR=F<V$):=S>,E?E#W8;-J:>+O$X-3V_<V)M
MX>P0,)EYX4HP80[D].11P50E]46"L80Y(]X.TDW0SP_O<=+R0:SH^HL;ODYM
M*EKTG//E$W<E%@4?"BMAXX65,!!I#JIRHN%40&>W=;ZP$M$A>-8;OACE^'#\
MYS]H]/O][=EMC5"9IFE%E==5-_H4N'.>-+[LD[A5"IJWDFLZDLPLHHJ^"C#E
M[1"J04Z-(D5])5T*E0\\'B>C?=9FU_JL\G.\-(PZ@7QL^L>9SK1!-=O%U)Q&
MF;M:7(S&M!#B4)5<F(',)EZG'K7/TL^[DA[P7)-^YU=#[7>_KW[)7+5%M>#P
MSL"XMW2'I6WA1YS>1KE*J#C^J?^=FBH&BQA[72?[#K-5V0)2B]_GUFJHZ0U^
M%Q\;7H.[%A(5Z]"<UVT3>0F#,U4TF?>#UHS/G?(3Q;$/)Y9V)$9'Y(AQE9M6
MW &36,60E&J,ZK%HHG6 <,6')"G)A\]#N5VI16^AO'WW/FA:)[G-P^%AXU;2
M#6XZ)6+G3)8IU&JJ+3!D=-H=>ONFUNTB1'-I&:#,Z[MBW.22L_@!*B=]:5Q+
MK5QIL91C49_3\$71Y]$C)5UUA>MX<BV1L:DC:\_=_TDVH>L_RX)Y+]63@KK.
M <5 U5PG3)-!DXU]^X^3BL!::2&:<(!\>LK;S1&E*],Y'QBP^YLVX#ORR9E"
M)0F$R8FCG*NA_FJW'$:,6N>"&&15GJ=4V6/9K0_HT7VPX6B^IWX8>V#L/. #
M)?%*$WP.(4!$ON=]O.&F9LY5ORF'A]9UI69+.8ZYG';:.3]'F9PS=;Z=6NZ5
M2_+V*-S7\$#%4.YWXV[396$>=7/D@I7,"")DI@IXX,W+QEI5[YRKI"0,@,]W
MWE8H_8P^93]G>N\LNB$<QDGWD L0R4@784[4Y_3TY/R=3;[9]PY=T(EWK#O3
MB9Y<JW6O^A""GP)D-<$/6;S,>T]KW5@E6!FW'(#2**)FG?3$&-A_70^.,5U2
MEQSR9&!Q4S%8LED?D/4] % KDG7C#@V[!B8:])H" C*_N'%1PB*.G>KBTHIZ
M*!\^U=F]USU$XRC-]PKAE+N)"W:.B35X22TNT$3-=$6MHXY3F<6]+MQ]J..Q
MKA@6/*]:BTT'ZG8XX%?,_8XY<U9 -KZ^0FQ!,M,Q>?XLBFW 3JZ C?[8H;7%
M]:7:\F4_+8[QXM;$G;Y0-(HJNVG8G\V"U\95_Y^B_7]6ZJRRU]SXJ7Y0\09!
MXJARX(9;F$9MM8UN6+T-[U*DMU/(;C#; TOQGO"OG]X<E.;6>_GTF4A[DO*U
MS^L?LJY KC^%2]]+1_2AJ@I4D=4"JE'FA1)7#4QJ1FMPXKIYE3+Z[68#;#H7
M6_[I"3^*&Z#T9-(Z2DM/WM!KE2R5!<4;!=0[6W$Q^;\MJ[9N2U5=;^UEJ3&I
M/0U$](7$UPQBLH#ML'B:,:^F-B=Z7RH$.U)R7/&LE'N7Y1-054'TB[T*6DKB
ME-]HZ_M I3?<7B*'+R877TLPG2'QSI9\0LWE5VP-###'Q"RG<OWR56HP:JW7
MV,'(YDT86H#F7S, ]ZVUYJ\O$GI?]V,X\5F15C!;_G@*N]Y3$)ON<(D)#,2'
M-#7PZV=K,Y"YJ^_3U@+#8L5B/V>+P3M$4NVAZ\S$FS>1V:9#5,:K2G!4Z MP
M7@\J'L$?HT1+\:*C=YNBAC2'6.RAYO#^:O+]-?O[%A[WL<]PRJ-YRN:ED?SJ
MHS3?H<6B )):/12P:-G/I\&9BW96XYVH%\3TF[EC58":>UFZKM0_EZ+]M_IJ
M7P9?KJ-BQN74WXSB>/TXAJ:CY6]W<*;=<GPJ(8H&.&D'BT,U@Z_AGH#8,S$P
MW-?V3AH.4'1L2;98(G.$OI:Q+/DN2?5APB*:+[F\D2I_O#<]XU]$*MMK>)+B
MV[ T:I/D.IKU;9M@DX=#3+#[CQ0EE1V,"]7%Y(&/Q012@5DWP*308W*ZL<,$
MZY/9US]9<=%ZICR1P.-WSI2IX>8HR)B9C./ NO8OL;!O6\MX_1I;WVAF=.B<
MY?ZZ$N%PR,N:,@VXUMSIW^&3#5U1[DRF4[JD)3+B)&;'^;LRKGKT3$O4%GY
MW]#3?9R DS4!/K+'!]"._::JS8"N;^!P>,?7IPJ-A:@6#R:QY EH5DU?6UL'
MZ]<$R ,=ZJ>OL!%J7QWU@:^\RO+9O"!85T(>$\LAEZ&2M\LE&@Q:#1JXQD:#
MFD4.C&=:&YI@V;W7*=C<.OU PO&R@)<5I[6I38[M9*A77$7UW7Y6:B)"?]N4
MV8B\@)$S#M4EJE/H]U<-6:P#0V2H:-V:.!.7OS8&OXQ'K!,<\[3 2\+N86[M
MY<#(2_27(J(IPP\0Q._6:ZO&GHG8CLS?M;%*+5-_OYP^$K@;<&]14L+/R*?$
MJH*\E[:K)H_370V+@ ;XM-=#'51A'<'T@OM>D7)VN&79I='B69]-0FY]OG"8
M9:M2<6&2U0^*_R"Y"_L3Y01QMF%J:+4ATKUA?/%#_43Y,UOKX-IC9/-CGT\#
M</YZ3(>0)J+'V@.&NXTL0A871?>;D6QDM+Q9-;^ \3U ]>'1%Y,2*YX/%?_*
M,Y!?S6TW1!#RS0[>CXV]GE0)2)XS179FUKC?97&="%\8OSNMIP[SLG:4[[>O
MV9V2+M+T?&/DQZROF F\:N &]F=(X_B 32G9$3<R*_.#77)J!M7[TP9O57+R
M8@QQF(F!#A[EDM8W<^7R0!Y:9?_#29EGU'\)TO^+S23_EQS^9^\@Q'3U]</]
MWG.F7T&^FQVM E],USQ^Q,KD^K/44^NP9J\2KQ83VY=/D#_^Z\EN*J&<ZM8N
MP.<.!^S\XQS:'TY&;"+F*"58+/^$._O5L#C<U+R0&<9-F__'6'KLDBXE/_PV
MSDA/OMRNP2 .(&=3_J8(E:B$;A4D2*D0/,;PP)7JVQ/Y:"PT*%^0(W=$7&Q!
MY)Z/)'C+PF/KPCV]E,G!JN@Y2YRD9&R11M0$&MK]"C*"#9$M?C"&KQ>44D3D
MI]X3ZBS5%6UGM] AX9:4/<I>-55ZYE3WFC&PH?[Z?3[: T)^9/S5S/*"0#5?
M&KE*230!T>DJH"*#QWW77?Z/,RET]AHA*YY/HR:RO/10.^X"!@-UPB-.^#V"
M"!AJV$%PO,6GXZ,&V?)\!+&U<L4:<"/=79$XT9$A+V$D9T=2H"A+PD$BDB<D
MH#/00Z;?C!#:4#*05@KJ[SLQ5.,\0KKG+O0T *X*"W8Y@*_IQAY+.W0[$5D*
M.[UO OBCDS,XPJ.S3++\,\# W[OXI'V1;)\M1.'PU@#]!_?T]2%<#G9C)Q%_
M_TML_)M5]/=HJ]TG1UN^G[-8#G]>X@SIW>$FY)1V/YDJ#U>062C92N/GWZGY
M?4*->P??2[X5GEA+SK?&9=Q/_=G:@T27D;YXP,IA'?R\J"TY6K '+J82Z]$Q
MJ9M<(_8U?#8:S9 #:AD#O_AKA@# !];>FSTE15AH9KXP.OZ+7+/G])*VX[_&
M!?FQ:U^*V2.=$5G%I5G:M*+-WR$QL2X/"IWK,KQ@$2KXB4/P%*C]\[YPVU&C
M_,>L\/L$Z]1 WTBI^>5B$9S^9.]SK2G.I96(1M]CE]/RBX&-*DG.  .K)EZ!
M*4B4QX:QA<6N<];$X.K&Z^DTB!([1_+4YH/Z]H .Z7C/1?G>9 AA):P4N-P=
M2%"OJV9DZ+F/HC.^\U.Z7G)#=O96C1@2XZ(WND9M\LRJ=8W% >^VM=&_R@W
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
MT+>PKY_]_Q(R_8OP>;C[G'QCTU:G_A@ZH=D_2I5(G,\?YXWQ]5AIN.C,BR!
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
M24C*TUVQW!YMYK&//M:,?OG!^F-@2QB=&]V*\IU7AA*E&'RD0*X=^6G3G*T
MV]<4-*856:PE$]@%T+/IV&;I,=8K3KBR?-Q7D8_(W;' N!DB<0XC6RTF(UYS
M!SC;<M2JEBD+[54:R5?#FK0*/5@#Y9>L]@-D5JM+?NW_'0XL_'OQP8U$@JK=
M"\OKXS"XZWZ!PWJT@(IAMX+(!'2F_+D2T*-'JHK&TF-75#5K-C&9XNXMEC]N
MPPPA+\"'BG ^)Q[9+OBQ3^7ETWCX0BF2W>NL.L'L<ZV(H[W-P.#UVWM--7NP
M.2U%Q- _HF]HD50^!!543T[T%4FU)-^IKDC.JH>I^4?\'1F1Z.X+2CSA@2?_
MA.KG@?Q,0V%+/1(+AVN##(WG=[.W3/_&.VVSDDWV=SGRL-LLR9:T8&4L*+K
M3Y_0\_Q5U,J"3*86UAJ=2HHM1K[X*6EF$$]X$HSUO77GBM'M4!3U@_JUS"ZR
MP-__1%Z79HA4"4*#1VM_,.%]P_C:AA-5LK8T^\DV@Z#B?K"FE>-5]Q."6@E]
MG\5&EE\Q%#*HF\ B36IP+N&FP*]OP<NPM=%9N82%%85%8NVW@;(4_2%KS2'
MRS8&'#X#3]2\I3JKBI7DENJCT4"V9&^B=Z1* Y Y,<^J3I<4#&R?QRDF+!B
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
M$_Y" <3KIX6FQJ#Z2:LT1.-^'"XT",QGH1UB75HQ+@1>J=<?0ABKQE=OARB
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
MNF!K^>V(H? IDNWMC.;QUA>KO=J,8^ZSGZJ)K &H#F<A>$<^?<;4 A.(MRA
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
M6G;$ICUNGEB#0]'!$"+?JE?T3+0>I+CB)8RW64 #"6W[(WW42 ,2V*#N%K@
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
M3_HKQL<B-ME?7*SUR!VZD-Z57L(T:*VI7FDK7,64_#CI8%H@P-%A[R^1F'$
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
MLA#8XD=<;W>M8&S<TW-@2#GK6WY>\ODIU-\YS8 0/Y(7R.:^@N!P9#M?^,A
M3!>5:H(P..>UF6/ZL"JOV[);BYG2W6T*9#7L1,K:N3O%I!G'$QHSD7#4V(<A
M?'J6[&)D%"IS%D9APU^8E-^]79P7:)K#AXH7.M!B\.'M/'8]\@]6/-KPFP9&
ML[=P&Q8VG'/]?/^SR;/_:J'S_S?X_V8#0:]WJC\[AI1.7DD>W[\P'&M1)9YH
MUVBYFM8MRT$;CR6%#6=,!^S_4-U"'*L40U\JY\A'2"08A +]=#%BFK0H?1#6
M>=N7:+VM<5_&(,M/4Y,J*>.&%'9G96WO.*^DT3LVL(E68*[I6Q/TNTGRK:XH
M.T< @-0EWBQS^0\DE_^IP3S+I=XB!;:&@.%TR>QY3&$ZDR<545T\,R6G(_"^
M7KH953-A;R["GOBT8SG%*H@FV':O!(5%8FC5^:]S*)6*J7F_]((+EIM&XBIZ
MV5KT-UI;*]<M#E;R_"?606)XGTR8D:.\D )2Z!KFDT>UPFNGJ\-;6-FE[5&_
MQ(:,FB_<]>ROQ=8O+(L5<&D0:+(1^CFO.E/JC T-(RPX.VLG4VJ>/H@OLBC?
M:R3:"@,*NAGX%MG%[3YJ[H5ZM@C++5W#/KEM\D)L8Q6K^]QWEL4CO6!YYZ4V
M2;+^'8ICP_"ZF%;E260\ZH:G<ZQ\IX?)W'+,X9Q[7C\R]S;JL81Y5XJPS6O5
M[X9Z$&W6SE"W-JJ6$ [A;"+SMQU7%&]XLZW=^:AXKHS<\R]CM'PM"\3PDD V
MKM;6*3:V]Y+*GGLZ7?]<V?7O01[\@WS[-$S;VFSU4YE=P]"THYRYCUBLHJ7O
ME28BR0^_IF3U/J)F[..'Y7Z(CJ.._V];4+OX2>!#8]ZM$0K-,NY)(N?^JKY-
M9K65(C8JJGG9:P6ITFITQZ@F5^%S +]7ZLY]F%"K:9D+^X%OFVQIG@_;RJR"
M$Z.=W6TBH]GXI6W27_[I!D[EI\2YY:[5O5]FVN=MN @X@*57M$K[%3=CWC4!
MR^VXF<?VKN@7,0:L8_5W8D+T>+F!')\>XCK ''U;C[/Q5Q_NO4K>HE>\<@)$
M6$4+W'H)6\LD3)9,JV=MH Z#@7LYA/;[:6VY9)_7AL%/M)0I;)T3"HS:WT^[
M?:O4(1")FQR_X'4:KYGQYGTX)_ U7M-UI)<-/G2&?HW7;FG &GXV.(W7= 0L
MW9.YL9_RO_$HQ^P@<5:<<SSE-I,+T_ $#Y [)F.-)"DRZ%.-K?<-@A*X'#V^
M^/EH[C_\ZT8IV'=?-TJ=2#F #(V^,'E.I@9YQ@5O?I;8C02Y+*)NU^%9&_CD
MX(K@>Q]+*<<LJ:U27#L7 :$NB-+Z(',4#<V$L-758<?VQ,M(/O&VD?,@&E+
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
MU< UC90UY>VY%>(45^HXC#ZYE;/V4[2D+L+M^JU7,>\MUKS=<M)'*B*-1"Y
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
MA@::6D?Q<&D$RZ)H7J-MF>44269=J3EC'9?4M.)\ * ][$JV_B1QFJPNNT,
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
MOS>^]ET=\=@> ]YI!FY.$/M21,/C'IN437A9E'L[KC%?C67D:]I0P3V!%YB
M'>*_/C7.R8HM6%,S&HP:1%/\I8JKZ1G5,/#U>B-*Y1#A-UZ"'&7;Y)HW6;^^
M/-H\'<OQOOUQ0[V2I+)3$VGB5;C*S%^W[+]/]0A&F>-Y]ZVZG^>\U:,64H2:
MQNJBW>=PNT)M"<EB=R=AENSRI:6^:UH#_+$3)6E2E3S+SAJ\>G7J[F@L=!2A
M%W^(*=.=^%0%KJN:ORCP:L!_<$:Y6ZS@SR?R@+!/M>/4E4JXMP(,RM)A+Q@B
M:9]@P5^BZK/T>,4=ML_*T'ZZQ6W-[SE92S:YQA[EY%IZ]]DZ^POWEXY/(--4
MXT>-.V_*JWL3(WTTQ66M%[UT?#9NFIQ4/(X5&CKS.FXC.7OVG^";R^Y0KWSA
MYEE<M$(8VFIO-8L17"$57C+HRATLI^D:AS'_E[S7K6J]^ 4;R(R=%+:6$/-6
M&01'<+.K<N'CF6CNP\]68RUG#T_8J\<6B;?GY?6B8-J/K(2U"M 2I>:UU=>G
MZI8BFVCX^4*:_I?['WX 96D6YIOY/5G;"=5J%.6J.93O',K+UB+.>*E&TGE3
M5QZCEB?2:+XL>R9V00GF RNJ-".#/\=:3"%OX'7QRQ."B4PG1N2COHIY_WQC
M'$3"CV"^2?PP1EOO^(/"31WPB_WV+]OO$,)<A7WXTJN3&N]955I2E%,S 2CH
M',H,#.9#?1#H!F'N/K^XTH]+W+_/5#2"@AE9DYX^M85%CF*+QR\.0L<\,GA%
M:_)>XQ*1:8-!!GI>3R0-N^L5*I^8$J'EL!.KS5 S3P+V+49K 2XY&I4#6&[C
M4.8P*-8:(CKBVG/5K>^X4Q2%4(M]G$=:/1M?G?0FC195JRBZ1_JU[RGJUIS;
MU?W@)?ZV9HRT,U9E(?93MGZU_\-5PUL;SMA7FD AD]KD#;*5"4FMM>L?-N:
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
MQ_2F/+)H\X9,S)L\03Z1H:4A"J@C@$7-7/B(;,LK:40OW.T>T;^S:O&>!;)
M&)O/M+LTLA/\;?^P2MI.M3.(7+5#_ 2$B)54&C !C!$?^M</-=P$^&A7J]SH
M6!L8+O@>KRBIQSR:#Y#X[D\,%?]H]]J]-IW\0W1IL25N!)7\(G*#:_8S[8U<
MN-PP3ZSE]KH#K/B2887.V&6(2:=:"0X7Z&F+R_<L%>6KC-.ZG';Q$><B+LMV
M$FG:U?AZ8JT7<+ZE?Q48+:0366JOD[R?X- =M":1IX0GCBRJS&?YK9B0\!:H
MJAH<L+B C'.R>Y :!;9_7-[3TR?9+#X;_/&9Y+/!8@&:&S%[6;65()%K<%2U
MY2$)[@$- ,E,"MT<]2MN#ZLII^C#Y;<L%1OG<7+/,Z8W^ZF5'M+6BK#<5PL]
M1BHM_= !1('-AN+;Y-RH])/@A[H&FRTB#L)-?V87^HSAIDKC.KBJX0KL)H'3
M'G/(? KKMUY)>209=,E01:*+'M]:\!N5_[@UX'&?JP:C6$/N6GJ<S#;'FM0?
M<?L<:\\TX\K?73*P=UXR2#L?)15-"VNU_47!GQ=;6U[0)[,N>'STAY]JF=<+
M[!15[AV<19C03'>5^K.KE[JM8S\EUG.]W+MS4:#@,YL\<U+2B5(-OF2H*/:B
M';MM^/">1HT8KL0+7C*\?.#Q7_-OR59&L#4M8IG$.2RX*@RF2MHB*JV>@Q.Y
MHO ."]8#!9QCJ<U=\&M>P_=*FW3GE16-\<_( ^7>_$_(Q<Y5X[T@!)'-(O&2
M@5D2H+9ONB6T=239:Z+TTT+EB&:LAE8FM>K#V4^)Q,NO'2(G44D>[4J_Z^AU
M?-RX#'S5FQU; MRE[L_C]@N$8B:VJJSGV[X+OH/K;GGF:^(CT9#N+7BE!!R!
MU:N?HFY0*K(&5(OJ,M7]+,\!%78$+WUP$[819$CWR&B+Z7N*&V/6[4#U/S?U
M?U'442+P1^T)=<R$J&3DKCF" U_7W0WG694)I'+K".L%4%S]QL]P=AZ"41]Z
M7?$/^'XF-;/QR *KRKSYX"$];>]8+[_O_(HIM;T#<G)P2N6345\3W2<=1)O\
M"*TQ<ZT8E8WFVYJ2&? MMYPO4YCP(EOF*C+.P:L>)X3S]CQ7X.V&#F=JO5R
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
M+4;-;Q2QTQL;BM$.)C\QY\L1\;6XQEF9KPD:6EK@CKN[/B%HR Z5P:$\\=-
M9]:3MD%_;Z+SW=RFW/DM;P$XLW)D6W804TO"N0VLGJ-2*KILECHW,!;GRC06
M(T33%[*V_QN<W+^-B_I%O\J6->%E9F-B(2 C-X%<R78O^]?7%.WBPDGOP/:Q
M (CU[703M$5R9_R#T?,I!;YN;0*B/LX$GR7+K'G:J!DS-=HLF=9$\LV=U$
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
M?W7("[1QLT5.'OI6^-R6$!9=C2&V6Y^E=Z;K%X]G&J;8F'@7$;V"P@?3-^I
M?+1K!@1A$\D40E.EZ8;1!>"MJ<KTE=!?WTEG@*:S]2"9#\Y<JO77J1?,S?HR
M??>2C]/Y-QG^VISC1*MY(G:%4:<:P<MZ&I8B-SE2Q'J=@A^#:Y,<*(*:<BC!
M&T B9U',;Y<,/!%TPT?XTL'D/=SH.$$7E8BUHI*OF5]3&5^R<*1#Y_"D(;!*
MLPU^_6YY7>@D?>NJX-A]HNE74@<KWQX T2O'?;IE947=]I 45G&VX( DFS).
MS.JV]6GH)</#&JTZJWRJM&'MH[.U:""SUGM=82VC@<==2YL6W6:YHI#ORQ"I
M!:F+$3&\HZ;:AR2(ZTAJO=P4"8=W3(8@4Q*4K7_X(,O%KEUG%K_2(X.9% F+
MS=;(V\)BFHE".N&W*4P+KP=--OKKUE>3>*3P2?C!I'QGHSV(8"0>U\1SRB2M
MQU3AX)ARHSP@$#[?\'R ZE" 8-\V6[@;&/<&#VN)Z5.[8^41V7. \\PUY6R;
M4W@,G20E>2=MF<X1'8<E9_Q@*?O3RTOC!0I5<SK>N(A0U*"$C<]:LH3U^E15
MY(9MK-$$'F(A\D_"LW^T6PS[&Q<%BM&SR;^?E+0]VT:J5A31M_S<G\O.G$9M
M&\[$,\IF/?](4??UZ [OX>J<SZY#NRKINAS5>>;7E9"D^C.%#-V;NT79^R:-
MD5J]\^5%/_]E?87H2_W;5ITS\ZR>Y_;V^1F#(5>[0\1=.T(1U!#FGN-3C"5Y
M=?3C(?ML[":/_CH8&WP%?LE X$Q=.-P^A1U:SZ0P5KJK5A&]Q/QN9Q]_+O#/
M\\ASC284?,Z>>Z3[-KA*MD3ZI/*,<7O?*X1QD(,>?D0M7H)>\+7X1W[V$9#_
MQ2MKX_M#X(@9;9GM5A^C[.EBVN1,.N9,=J+X_"UZOV0:_3+?T^R[/\S\_RQ\
M_!>&2X8H+1,T#S3GTQ6'4^=[!E0 "N7[#WYD /O]EN!^T=ZR*:./ETQ;\6L3
M <Y#^'#@QK6[1V3U8HN5+>I&[*$53@1+I0W[N1SJESQH8'=FC&N%LN1])6I4
ML>S*.L,FCH?@VPU*F)CC;GBZJ0?NMYJJ,*N,?>L:MGU.R3P9!GUP!BF2]]P,
M3*\/]')Z[H.YEUH\R,@W'U6/+O=>'PWTFI"36:?*DA>.M^H; ($E^C2C$BN\
MA;=H$\4S*H6=?LIU,,:S:I0+?*83D<")(.>S#+7VVY>>H SKDF$8='32'& Z
M=3$UDU\@RHX/G= 'D3JCLO40K3@.UML$&IF[F3GXY>9-GNSDIOCO9U@&-Q\F
M-_H5DBS'#[&R+1N"$@@Y;C^$;=3BO?RN>F)5L0GRO2K3$@]WI6M0Y!W=1S1!
MK14B5#Z6]:=BWM2)L''8/#YM%J](Z00 6EZ#5 @IP^Y2CBXN:6- )4\JIU1_
ML+R=G>^$/2SCA[^QU<V7#"K!5L*H2?DL B C9W83I:N93:+AH_DJ'"W(0S(Y
MG>.R]CED0G2<2K]T].T30W2^.! $5)=]4C&I*[!]PT[2%,Q987%U)<$Y&\J%
MBR1,5TT=4H-?Y?6!)N=2>Q;4W%NYMP*0H2K'7WSN]?B[O\[@/^<AL>W(G)S4
M6WX0TF*9LS1OK^#M<7Q0"=%>(Y22*VP]B.[:EORPFIJ"$IUU4)X"*0FK??H,
M^XIEC?&D=3#X&WE7$_)]5G\%%OI:;*(RS#N@4QM33-</Z[(<)/6WF6/07%I8
M%PT38L/);5M>^[^4M_MWR>S]G'EZ0%P\1"OS1>L1.<KRY05;^RBZ=AD8<<D0
MR;U643K*-.TO_!ZN;;O=D:G;QBN#-T%)2BPHIPAJY63QQYG6:% ]3\C:);MC
MD4V83RFV;7[S@DG*C>/%PQ[OUY*Q\RY/I3U&C$,*,GG+I!\K/ R;_=^NUZGH
M"-M!P(MK9+P+ 3XX(B/:-H%\<1I?\";[ROMGX3(/DXW#P5W1/'E$<D&YX=UT
M$W2^4S!05YHB9<HDU6,+4&)F;OD/2&#!)TB@7,%=2[^0O616P%%*H4\^5^2Q
M;L!K_O:2WY]HL2-&2I&A ;UI&CIJ(7L @2E>DT 9PEI^ YAE R2$)L)'WM>4
M!X$.-%S?&IE(Z>P.F(P'R#WM7(DTB[UF&&NA3<X:VT$;A2([+5T(M8K@=-MJ
M2-8?P9K_1YU&AL]O<P<&6Y8O7/3;B'BQA+I B9TA2,7/!^"H* OZ\&@U<,W]
M846S5,[O"QPW=&M%,3@" (%[V>_A%,S\);6JMI5^5CQE7M.X;(Y]DS9'FO19
MSWV.R11 L&AQSL!G3E".VSKYJKOBP#DU-P/+PYP&;EA);&H+;X.FV"=<@7)8
M0_\^%S#3+H/7>F9E?JR!*:C2/K7M1Q?WV%[RM*@[$__#Y-/""HQK/1>I?-ZD
MFR:H6X7FT=(-]& +D">P+)7=:341+K KQ%R)O&0@489;3\<LAI9%@%+3.86I
MJ?.I9@-+O7TQLIA)WY+-4]/Z87BT+3W0&?ES/#<H)1+24P(BZ<C<MT@@1"V)
MD,V'4Y*PT%E1Y/#\8FN\VDCL_+MM)X50<] N0=PT%%$\C,T^P,T2LA'W= 3.
MOP"5D>P%>R@O(()C[ME4PB%L#IOA>%T[J/>:[S\6ZHO]GO#;<[>-K^R"^YXK
M*.XL-Z4V&]KI1/+E2_*+%/;SN73$\:!QUQY3C(G2']R_0>RF#@4 E PU>"O>
M&?'IVSC',);:X[2=O9 KQ\@2+TNSVV,CLFFPOO>TUO=U%8X;F<EJD7>[/=RG
MUW$)NU<*XQV2YFL$VV<%IY.T"XDNUC3G.QL@W;JAGB (;ZZ[O#"*;7GM*8N&
MU%Q+<6U['C5WO5)B@)GNAT%7+^7X\D[3"OSF?O_Z/.?CU&_0]O97] +>Q)Y#
MQ^66^*UW+*8>+$QX,, >L\>EV\+0&I9Y]@UX];@D\):H(=$0/6&2O>T H_O=
MOE7/O>/D+;WY8@EAJWOB/5%,AYV/S>+E979:9/T9R2%/^I]"IJ7-" Z>%V35
M^@_7O5C?%70TZ#G"F;9+_)Y6B]][E&;R1=98[@Q@8DCEO<%1,5"WGMW2T3#R
MEICW&ER>W=(T(3RG$PJ72R)>S1?N<Q5,[5AV[H+@TL4G"%?B3N8BYR)G4\>S
MW=,(;)/U;'5D V#4PKWLD]G4V=3YK)B78(F_W@Z?W^(.YKQP?)F!$6"EHW>9
MR8RA=9T>(E46#D?#DQ3DJ\B[$QDX"V&CV[3Q@SOA-&0*Y9(!$SP' L*I:&;(
MW"HS=G'%J(<2ACA7N:Y_0^8(7&DY9[ROKK3J'"P]VK_"J]L-1!FV'!EQLEC.
M8JA*3/W2'KS3/EN??#J%UD5R&\N>#8:]J=("+O SR*!KJV>^6";\@:B<?2&A
M651?YA2AGJ)=$<(_FI(KEKWP T+7WR3"H&L;@V5'A/KDRMG4[WJ>;L.5\0H6
M?FY>'*\*SA>($VM/943.'*P/Q]L113+(-N%K6F>8O\C][YUZR?#9!\=,53F.
M666?<U0FU1 JI$)\0V^H(A3:!#Q+ID95D[LDO<[N% EC$/MB1A<;O:3L,+1
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
MP*];ARKRZ@'SL84%UXA.MLN'#._Y;S<U[(0$N17RW.@S;,2H =>*+X:X"^3
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
MS-@^LT,U(K&;ZX;M MZ:X@*Q^/EUM6XAV>]^5_DMR5Z3I5>";7E:+R;\)-U
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
M(-?:\*^OCO?2BIVG;SJJ)MM[OB"$BF88ZPIK_6-I0"1O3G8>A!][T3X]S/S
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
M?!'+_BY2D9-%2 ]Q6[Z=["S^;$9=1-3:^BH[(L=(VY/(05= 5YDO<010EJL
M'4"ZJKI6<3UMZ?+CO.F"65&<3U;*1F[@\]3E&GB3<DI?V+YW1 I&>1^NK4%;
MK@KW;8>Z@[7%P,U- '_6\Z5W0^F/5W3IG8N&$:OZ5L,N]\>(XNK,] Z(,<I
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
MK20:P^G &B!8T.^YZ&5Y?UNS0!'<.]%U4F:[6@_KB"A>ZL M8,8DRP\WOB6
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
M7NN@'[.<V3(7\KE+0JMO&D&^LT@3?B:H,'5%]]_6=1,/[.<EOJ5GUL"D\5K
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
MAE9)ZU-BRU:0W6S2;5\B9!=[N[>S5;C_9/Q06IV$"..9R]]+#\DJ(86= [G
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
M,)J?W[NC?^'A'ZM#2'\UL_]\XX$,@)0!I.NU R[Q,@!WRVM7!D@.>AWLOV.
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
MOY\"6VW6JS1S5/("DD#-=(^%;C4R4Z8TDK)K>M/6W'"-8)>'>S3I'E+TTP_
MBSO#KP =9#![]T=E*2)(X)P/Y,>#@W/Y[__CQ_T"/,JBS%?+?_Y3^.?@3T N
M^4KDR]M__M-OW]Y#_*?_\2__\ ___?^"\'^__O(1O%WQS;U<KL&;0M*U%.![
MOKX#?Q.R_#M0Q>H>_&U5_#U_I!#^2W73F]7#4Y'?WJU!%$3Q_E^+OR""N,RH
M@$)$(40HBB"300;#),1IS$C(:#:[_0O&<9)A12'-5 )1%"+(6,*@Q$$8)'%,
M5(*J01?Y\N]_,?]AM)1 *[<LJQ__^4]WZ_7#7W[^^?OW[W_^P8K%GU?%[<]1
M$,0_MU?_J;G\Q\'UW^/JZI 0\G/UU^VE97[L0CUL^//__N7C5WXG[RG,E^6:
M+KF9H,S_4E:__+CB=%UA?E$N</(*\Q-L+X/F5S",8!S^^4<I_O0O_P! #4>Q
M6L@O4@'S_[]]^7!R2O*SN>+GI;PU*_M9%OE*?%W38OV1,KG0TE>CK9\>Y#__
MJ<SO'Q:R_=U=(=7Q81=%\6Q4(R4Q4H:ID?(?3TWV\Q7B>Y)W?2BK!^$J=7_U
M)>,Y3'_U)NXWS0]R>($[TUPM<OU O5N*L9[=[517BSZ\Q+X>B]6:+D9X+';3
M=$1>F%]\U/]JIC$#G2'3:IZ&NCNBRA]KN12R9LMG0X-<_/.?]+_FQ8K_??[U
MCA;RM699\69U_R"7947>-T5!E[?2? ]?/^TN^4R?S*]NOM-"O/N/3;Y^^J"_
M $7UW2P_K>]D\>V.+C\]F"'*&_'OFW)=_>G#LGZ4]'_5JK@WGXPWJZ7(J^M^
M7:UO^%TN'Z681VFH* H4))P$^J/) \@HE1 I(6C$.$JR8+[>ODUSN82_?6T5
MK[2;JFI_<EC-]0E6*F2YVA1\]SV_7QS[2.OOL_FBXY^7]%Z6#[2Y0>-C3)\:
MLG^I-"^!EAE\O\OY'7C8*0!XJP'X3DNP7*T!;=0 K_(E**M[?_KO/^]@_T,]
M98O_PL_.8H3'!AJK3( N,J ##6!/H'M= P^H\)F!&B'0@0A4&(&U!@DT*,U
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
MOZ(@3$ M+=B*6YUV.P12NP!_GJ:&A'-@FM)2@U9LT,A]'-D^L>I.S[9]'/M
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
M"5PB2@8$=J18DX-^#%LE9B;RC$GPF>9B!FBU!D818#3Q'8C2$TBO(2JN,KQ
M\$I/F(Z'M?0=K!\?UG:J'J>.OOM&?YC:PE^DT5_/6U.QR:N[$?^^*=>5"/,L
MB1*$4PX5)RE$BG'3"1=!G,8\YDH$.'4*A>DCQ-38L)+/C0A[86_'@T,C.C -
M;L5O(W!-0IS1 #Q701-EE7O;T6* UC37@.F)"GN),"H37@/2/A%>-5;/0UQ>
M];XI=WDJ?RU,<X@ZRV\>)QFG*L:09@F%*$H$9%@P&&H:S#A/ \:=&G2=GVYJ
MW/:MH$*:CG65S":7[E*Z5A^,+8]2O2$W]!EI"]=.TIDVW-2JD%79J>]4OU=
M_PCJC4W5T64&&D4\'HE: >;KK//\9.,>8EHI?G Z:7=73VOK/S;:E#/'FZNE
M'JV)>TTRJC#%&:22<TTN802I2A(8)2DAH<B40D[D<G26J7%*+2382MDSG/@X
MHI9&TK4X#6T%.4/D;MJ<@\"7[7)TCG&-DW-J'E@?9R_NF<E/R[O/Q>HQ%U*\
M?OJME.+#<KO1NS&V3A4$4;7@6^K?;:1H_KQ:EG/&XP21+(4)129O,XDA%@&"
M+*8$J8B%*7':;UTES=2(Q.3I585W7FW*JOWS3^"AT<T4 MQU"J5;Q8QG6724
M:R_2VCGF_E^UK'8L-=IB#7UT:=;H<V=E7OW6KM?.V[739P:Z&H%/EU?(O42
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
M@-KJ-'9/O?7Y;9FO2_ S./B#.;ZHCBS*L<XL^CT? Y]7#+[JTS^KJ"$ '0Q
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
MD&>0!(QR&L0$QTZ]+/L*,C5"U<]U[%B'KN\2V+'F&, .3)FU"C.P50)46LS
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
MW,EYQMV)75+W8!]U\89K\YJ>!3!4_?FJN/VJ>$(5H#]/L=0D@3&4*L00<95
M&@2F5%-"(\IH$A"G "F'N:=&&]U4F&?"-_6]Z\28NJY(G?SB6@W485TL[85A
MT![:G/ (]!6I1=:0>4\CNCSS"Z4,64-R.CW(?HA^Y/91EJ6439#I\O:CI)H8
MVE+L37)H^78C_TW2XGW^*.<J96F 1 Q#G"B];]%;%B)""9. IY(0%,K4Z831
M58"IT9Q^+C,WWG*&W(Z\A@1R8 :K19^!K?"@DG[6;0JQ7@$FP6>:BQDP*@"C
M@S\>ZXN>)S)SGGY41NL+SCZM]1['9\WX3DGK\O73[IIF_IOOM!!UO>%MK>'R
MP[*N9?\WF=_>:?J]>=0JW,IGM8CG$48ABBB'220%1(%I_*[Y$$8R2E4H@H1@
M/-<WLM5UU>2'4L"%$+IJ#,<+K;2@$7>O\KB/XO&#/0V9("1E4D')$J2?!G,:
MC@(,.8MY'"LDP]!M)S#99V&,KVPKG "O\B40J\6"%ITH9M>J!N,^"@[.RDDN
M\!CNT*;O0%?U;O.!$K G<+1!@0&@;4U0[GH3E$ _)S4,,]"71SRU*QAZ#0=M
M8S"8\!-H;S#TPMBU/1A<BG[6T_M\F:_E0IMAXL-RK27,#XK"A7,:9R+ <0 C
M3 E$<11!'&K#1]*,Q)'>(O+,JIN6RZ13^S:9RIK_](]A&ORW?S7E-=T^158H
MVWU ?&,W,.W7XL*/1EZP$WB_L*4_<G;!QQ.E6DTY*A&Z@+!/7T[W]B.=7^7Z
M#2WOJBQ (<7KI]]*,YF>F2ZY\8#Q=?Y8^?;G,4<I8@3!-"8I1(2%$,LTA4$0
MA?I/0L1!ZE*]QGYJ)P(:H<*-R>SC6G3P:F-,HWSY$WAHM#!FDVHU '2K@AM)
M.:R*'54-@_7 A&5@-E*#SQUP7_W60KX5'MQ<AMF9O-P1\T1A#A./2F3N@.S3
M68\1!O)#G;+ZWFE273]]6)HC@,H\K-**OMW196,/[F[KG'H:'^D\B46@8H4A
MIS&'2*8QI G%4*0J)2'C64R<>D"_@ Y3L_.JHYB<FWUD-_J3Z\^>_BR>-E0F
M\TQX\D.\[$I/P!EQP1=1XP Z0#3E']<:BIVGHCM"MW"[ 61$C\1PJSF66V(
M#:;EFQANB9P=% .*TCM>S^38ZL]UE5MK\A[:(A0Q"1#+X@ &*M$;!,04Q)SH
M_Y"44H1$+&GB&+!W8JJI?:EVDH)65)NR%:X VWU/_, V,.WW1*Q/#-\%,/P%
M\9V::.PHO@L*'PGCNW1'SXI ]P^+U9.430C-D8A4QE" 4Y5 E$ID6@HI2%6D
M?XR"&*,T#$WVO-,)[L4YIW?HVE:(!X5D6F9'5\%ED.U8PRMP Y-'*RLLFEB[
M8>. K:'Q537HXGSCE@^R5?^@CI#UC3U#Z5;+6]-'X:UDZ^TWD@D59$R&D.(T
M@"CD"A*4*1AF/,9!0 @) Z=PN2.33,W\,#)"TYT&&"EGX+<EWS;([6V''$77
MCDNNQ6Q@^JC@^M8?+O=8MS-X^(IG.S;%N#%K9Y0\B$L[=VU/,LB7IJUBY1MJ
MLGM3'H<L)A%D(F)-N?TXC:$,I""QRJ((,R<J.)AB:D3P13ZN%H_&J*ZE!.\I
MKV+]'%_]0RPM7_RK$!KZM=?"5;U<:FC\)TB?UM[72WXXP;BO^$D%#U[PTU?V
M>[W_2O.E:<OQ:?F5FC#]MJO>G)-82A%@2!%*(<I,)1P:)U#B,$I5I$02!_.E
MO#46R#?[=_W4?%;/,ZF?YX-9AWNV_Z=<B*HF8*FEK;J.UD[4;<% -P(XB784
M$$H53V B-:\B2@-(129A0"5F5 1QE$JW#=M50(^Z3S.2@O_#W;LVN8TC:\)_
MA1&[L=L349C#"P "YWPJWWJ]X;;]VNXY,>$/"ES+G%%)'E'E=LVO?P&2NI4D
M"H! %GNC(]KELDAD/A ?)H#,)W^9-\V##+2R4Q*/A*PFF.(L+P$I96X+_$O
MA2S,__*<(<*I@%Z;9S%P'>.5-=8WU^T%%@.U@5]C[=?PW>9KV K:5PUFYN6V
M,3C>6^T2))'>;6>'&?4-=\G9I^^YBY\/Z-+:E=6V._Q'9P.S3,,,4ZB R&UO
M5IY"P%%1 I%Q23 264:<M( <QIH:5VP+X]L#/]X<Y8D]@SV:B%Y N9\N(F,W
M_%Y[ UMW3GI\UAH/-H^.J_'@&ZG/:CB,?JU5W8#I;:AZX1;CM5%U\^6@>:KC
M)8&903:/Y-MR;JZHVQ&V6UO8A+8HDQB8)80)P(1B@&8D!QAF'&DI!,F]-@[/
M#S4U6MVWM.E.4/Y71[&>[0EZT'4+O^)@-C"=[AOYOS=L<+M>KRK^L&Y4P]?+
MY".S&]R#["9>!BE6(LCY@<;-U[CH\%%:Q>4KKI$"MQ%?*Q/9](RJ%G?;IE'U
M"V46,UT?T2_LI]65- .;,:H%6SV^7:O[^KUQVXKT+^=FI+NW"_.,JWH]HT25
MJ4P%("+3 !)M""@5&""((*<9U3@E/OG5 ]KJQ6 C)&1WHMJ\\2=96U="U,>'
MF5<WZIO(; W,G8<MF.VCGNQ<W;7HJS=3V7V^<?<F.70OV?@76S)]T$F(*KD^
MC*7/(-D^*.2G)=^''3(P/%5W=B'S:GG/JL4,:U8RFDF09XH B/,<,"Q2P%.F
M5$8+18E7*YR#NT\N"&V-JY.OK7V^VE0'R#E&FZ%X#!U@.D/A'SN><CE6N'AP
M[W$CQ%-N'06%)S_D]Z#6J_7L9=L^OOJA7FNMQ+HM#/Z@;^6R2;WMOH.4$)B6
MT#9[+R& /.. YZ( LE 2,R6HYD[[=.Y#3NV1WEF=M&;?= (!=J-Z8[KG\^XQ
M ?TD, RL S-#)$2=:<,?I#XN,7?;XQ'SMQV'> PT"K'X.[YAFX KKU7)_'6Y
ME']4\WFGB,G+E*2*@9*G&$"4EX!ISD"J(&,**U[R0$7,@W&F1C;[HHP;0Z^5
MN3P$UC&HN!ZNH<.+$*2NT*D\B4-T3<K#49Y)?_*DJ^>U)D]_/+ NYWZY6E?_
M[GJ6;&MJ&]W*VX5L.IS;WG@SQ94J"UX"+875DTQ-7(*+$F2\X*(TRPU*_62U
M'0>>&F&\_EFM-P7ZCXFPYMXDB^4"V,I^SY(=5^S=*&0(1(<^8MPSV?**3>QL
MY/:;EB2M%*X5Q]W:'K'"QQ.M6/4^KL..6_WC"<91+9#O]7%ZA=OVJDUWU5F&
MI$P%SP%)=0&@QN8GE=ET/BH%AR+EQ"L-ZNQ(DZ.C_4[AC:G7M0;?0>I&.E&
M&IAE3C4''Z0S[T4P!NH/OAOG61N$'[E[J4/X\05AO/!*:;5:*?F%_=RK%FI*
MFV=0B5P@C0#-8 H@M-G\J<Q!*3@NA58P+[W6-3UC38T;&J/\Z* /23="B(3/
MP)2PL=(>$1V6 ?:#YDT)#G!$(H6^D4:E!0>7GQ*#RR7^.ZZ_L7\L5YLRV;8[
M*B*R*%+" ,3"_ _) E"I*-"8D52JK&3,B0U.WWYJ!+ M$?9I4GL&N<O;HM?A
M,?@6J!L47GN<YSV^8C_SQ$U'V[L\[]#^/F7/IX+?W]5"R1=J87Y8?S03MSD8
MM2N(&<]P;H)X!5(MS4,K&004F8>68%J8/PN4%=KS%=XSW-0>XHUMS5Z#]]N\
M#U?G%WHDM(9_IUM#D\[2Q)IZL\WV:'83HK[7'5")]VKO&VSLM[N#XR=>\"Y7
M!=)'58OYLGY8J0\Z7+IYM_)%G"'!S4)!9J4 4' $&,Y-I%! D2FJ"T2(%]_$
MM6]J!/7YX?Z>K1Z;&ME]);;7;1]"FZFU4*+YU1_5^ELKO^:9:!=[BAVI[_DF
M;FBNW'IFI^UZ9?_N("@99%MEH&F(1<Z1K1N7S8>!]HC^!QHFH$QNFYWW><W6
M#\:>=]5]U=8 U8:QJC:5KSUZGQ5I+C3+F%DDX@Q QB'@E$N0*8%*"7-),Z?(
MTWODR7&\-7G=D,5\9[5M-=N9G7SO>GA4B^11L94CO_M/23]S#PKTP)R\2UI.
M6L.3#SK9,SW9V=ZE[PR%L4<YWE!8CU2<%Q%SOVJ]$-QZ:_>\;CA>)5^(GP=U
M?4$W"%M'6)7QVX6T?]CJGQ]L;M]&C;KAXRYTQ)DN!44<(&@6!E ) ;BR[>.X
MR"&25'#LM3IP&G5J[X-&7]^>S#?]#-3.;K^PW@UQMV ].HY#[TAN(&Q^V#/Y
MII4V?4R^=G\.$E1[P14I5'8;<]0 V N&IV&MW\77YFO:<'FY:$2;]985NT5V
MM['2+,)V#TY!--5900"46MBN3P10!$N0\AP+E2J1XL"<3F];ID9@>YL636.)
MVK[AK9[,?NE8\XN3A6:AJ:'^<^A&?B/-S,"4N)]BNO/#_FTO3MML*_W2>?.7
M0?<>(@ ;/6?5WY)GRFL-ANQ\[FOX+<?N3=QN69A1S1O";GB_-U_\KL0$"<+*
MDD& A.U 7.@,D!(*,^<EDV4)S3]FX_2</6_DU B[W6:TIH:6^@TQDX[L_,SS
M,S!M^TS-B*U:+V/W[ U9>TR<5FN3*T".UUS58:S O.*FW*KZL2O=_L36ZI.R
MZ%7SJC'PY3=KW]O%7JI2VU+Q;QOMP=N-]. ,(2@8I!1(K9#5!"* 2)0#3E."
M"YGRDA=>V<AQ[9L:M;>FVYWCJW4<8\^D&[\_X_P,3.U;S_8C<.M<<NC=3;*;
MQ(/<RJY+[-;)9.ME4X,JXG9<&&8>8F5M1[9NW%SO8: ]RA ?:)BP]\*+AVHN
M;<*Z>>&\O;>]6ML7U*^K95W/."H*R@H&9&&5WY3Y'Y4Y 0IR6"!4%EIA/U'C
MWO%\6&$<9>.-N<TN9K5GKQ]G]Z/LQL#1D!N83[=V-ICM6WJ3-+;&(T,G2")1
M6_]8HQ*5D]M/:<?MHNO:67U6JQ^54*?#W_?+Q0]5KU4;X]9?K/C9_K_;++GW
MR_7?U=IRX=VB^K<)C9LSKS?+5?<K^[EL!F&&D+2:/U2G76^L3#) $2:94HQ(
M[;7G.Z[Y4PM-_UM5=]]LJRAF*)69^,8FX2:KG<6!>0_/].5P#&<G.^5#[S^?
M2F_;+4P;);G6Z4T/6>NE^>W:S/TZV3FZU5>Q!PA[SL9O+C;N'$7N5#:2\<_2
M]FS<B3G70VUD*ZY11S5A?'O4=J<6XK'53E&(B5P1#%*D"MO=@@!>% *0E',L
M,YAE"/N\S,Z.-+7WSMYJ>\_4,&&:\_"ZO0ZB@#8P<P?B%:CTV8-%5)W.4^,\
M@\IFC[NG-3+[+@A/S6K.Z:62+QY_-T3V=O&V82\SR&VKQE*INA&::([KE=P=
MUL_*7-*4, $PQLRV'R* I0P!A)G&*F<D%5X%9%=9,S6J>6\BER:+Z\&&/2:,
MK3:>;&1N;)/EI;:=B[;N),O 5(CK)M(]$VR4Z1DC0VSCB"V_^.7W=HK^DFS=
M27;^W"3['KDDJP0EC5V-;,1DLG!;1D\RNQJV4\EGU]\T-&+[8=9#R]7CFVI1
MU=^4M))D]4QPIC15&AARS6US[@*PG%%0(**0+FS]A.>.Z.F!IK<5NC$ON;/V
M^<9G)\%T#<ZN!6CPR*PS\";9@M38&'W#LQ^*:('9R4%&CLKZ'#T.R7H_'=)I
M+$\S^EDMJN6J;=5Y>[=2S0Y)U_65B(PRF6$@1(G,L@TQ0,I4 9IEI50B9Y Z
MJ7$YC3:U>,J:F[3V;GK&;BWVZ9AU">1^?H@.W< TT8?:Y9Z[ ?#YM!R+".-(
M=4W7P>G9>,P1GO[68Y=N,F+S,4=_#MN/N5X4V,?8OBI-M*>KM=T42Q7,-,#<
MMB[.9 XXSPS%IFF6I@CE9CGKT_!G[]Y>7#I"@Y[&M.1[8YMG0]<]P-PBJ4 8
M!N;%%H&/_0CX-V<]]C56/]:].X_;@O78I:.NJR<^$O8XOF,+>>[,>!,#E47*
M"IV"$I$4P"+E@*J< "258ISG$!=>.8"7AYQ:(&0MODG.9SSX/= .D+L]YW&!
M'/CQOX1AQ'>Y/SZ1*,-AP%&9Q!V IP3C<:4?[TA5S5XOUM7Z\9.ZJVQ+PL7:
M9C_/E,*8T30% O$20 4%X"4TH4&&!-&*9I@ZL<RY :;&*:V-R<[(Q%KIQB1G
M0>SGC1C0#,P2GJ@X4\(EUT\00*W$7^^6/_[#7-H^^^:'W2-_]H:C/."7W-D\
MSA<_%TOET-:MB;62;Q[6#ZM-^5J7>%+_7;'5&_,5F:62\C*G.4"H9 !RI 'C
M)092IA03FA6L\.J\$&C'U*C ?*GPM7*(;A/@%E>, .O -'):0''C1=*ZL?O7
MUI&;Q'J26%>&5%?TPG(PV44W*YY9C]$+JLM"C7ZWB]$?^?21U7NU_J"_L)\?
MU>H%JRO1Y#3-:)HSQ2D$I;(*7913P'"9 <R@K;!EE"+A>^04:,OT3J6Z?KE5
MFQS3M,T]<XB?_%(M$KF<S]FJ;2516X_^<DTW9)]9=#WK&F%F!C\..^ID?.;4
M?M/XYONR9O.F.<[IS]TD-H/#_+OQNLD[31K'+S0#N;+'<0#X@W0P]K'C&?L3
M!\#5WWTXY(8!)WV?#-O_8=.W[&KV]FZMQ+=NKX7:/6A),&"TX ":60(49PPH
M\VMBEJ I5+GS$=_98:86<^X,;9[.UE2/4ZGS>#J<YD5!:6!Z.PE0R/G=>:0\
M#NZB(#;2B9W?5\OOA.XB#KU'<^>O'N],[J('!X=QES\=:P5O!VC:E'Q<UNN5
M6E>K9K=O_Q,[[=NZS;K.B**9DH8ZL[P$$%-EUO/:;MQED LJ&%-^\N(QK)H:
MTYY:B[9/1N-8<NC9DX_M.1>6,A]GHD/W#0:>OF?811ADYB+L*ER!]&![#"$V
M/?..PQ4P7MY_N.;F 2'O^^5B4SSUR@PES%>JMH-TT0>7B.6429 )N]^0000H
M)PI@#;,T%01*ZD3>#F--C9*-M6!C;K*UMWEP/0*["_@ZQ,'Q4!N8"7L "PF)
M+R#G$1?'0W"DX/@J)/UB93=L>@/F"[<8+VIV\^4@=':\)"Q^_J0,@S^(]<.J
M6MR9OZC5#_5I.9^_6:YL!>J,TY2F!<T 9[D$4!4%X!@A@+GF*68(IYE7N>>%
M\:9&L ?F)IV]R5=K<=*9[!G'7@+<+4*-"./@VP]7(.@=3SKB$BE2O#3:J#&@
MH^M/HSO7RP*39)=+^4?5W$U5=XN7#ZM54W^Z,B'BO'E#_<JJA=U"G:62""Y)
M"I#@"D"6IX!1$\OE.<YD00IJU^!>QT;N@T_OG*BS.1&=T<EZ9[5GVJW[%+AQ
MSS"P#DQ#&Z-OD@VR&[N3/<,3:WEW$A0QM=<;L%B9O^X#CYL8[ W(4=ZP_QW"
M".Q6F&CZP=Q2R;V;W\I_/-3KO=(5SC35C0P&)CF !$O H11 "YZ2C'":N:U!
M_8:=6K34^VCMC/?C+\<9<..N^+@.S%M[!A\SU\[NY':]7E7\8=W([J^7R4>V
MBEM7%(9@)")S''14$O,#XBF!>5X=ZW"D^_$#GU=WS8C=+^J/K)(S1;72A29
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
M3=(ZOU<I4._WPNL N$E:"&S[YA:$B&EG(T];K+RUL<P>-_%MY,DXRIP;>_R
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
MZ_8.^ SO7A< 3K^!G:Z\KM?YYS5;J]N%?&=F<WZN'W=14JD*B0'AN#1!?%X
MG@H$<*E)AK),:^:U<> S^-3>$XW-85W/G;!VW'D=",&A=U@W'= ;NYL<Q\;R
MD3NA^Z 6N1^ZT]#/TA7=!Y1SO=&][C%RW[SWRZ[%R5$+E*[!TTS*W$2^U,2_
MTLK 9ED)B(0"P%(5(B>"">G44W-X4Z=&BJ?E]+NDP&=IG75YMAWS!B8QAT-G
M%ES?'LNX"UI_3W3*ZMIBJ2ETPW*>E^?N?W79T#]'QRMGP*/UN'(?,3 MO*&U
M-\RF6*P?7RWO6;68X5*DFBD!F!820 8E(%0HD%%=XE1F*%=>!2RG!ID:[;<V
M)ALCDZ^MF;YBX:?@=&/G:T$:F%>]\?'/]>X!(%:.]ZDAQLWM[G'R**>[[[-A
MC[NA$\'J;Q]6']EJW?WE5?7#:IJN'U;J]MZ6ZMK^38NZDMWR_),2RGQ$9C,(
M::88,BMFC&QA&T6 F/4T* L-BTPB0IE7)]ZKK)D:@7Q6\[E:)8NE60Q^7U4+
M47TWBT'6^.!'(M=-DAO;C ;]P+34F6X> KOEMTXV?]_SY29IO;%[A0?^)!N'
MXG%8%%@CD=UUMHS*BE%@>TJ?<6X:*&EY;]-9_]W<\X-^NUB;[VS%Y^JVKM6Z
MGA&=EYK:3 )#J0#FF "J, 8Y,9/(,ID7?@HH_<--C2GWK;4/Y<[>I#784^NR
M'VLW/HR'X,"$%PZ>OP"F$R:Q=##[!QM7#M/)\2-53+>K0G,-6D'8CZR2[]5Z
MA@0E+$<Y(&E)#(/D!2!8VX9UN61(ISP5Q.^0^^#^4Z.,E_:=_MW8EFCSIJ\Z
M8WV/4P\A=#T[#09F\(/23B/8FG:3O/ZYR?!^R;Y7:S:O_MT(Y+8?NMF<G)I_
MO[6=RII\W9CGHR=ABG88>GCWD4\^3[IV?,QY^F.!1P/BFY(/<_5!_[I<RC^J
M^7R7-%?RC)MO1P:(("6 J=47D<3\E0M>0)YRJJ%?LD7/:-/+LM@8V\3SW^P&
M6FVUP%ZRU>JQ^7IOH_V-,Y[[]#W0.VZTQX%SZ)WR/1PW=B9?OS09%(/D+#K
M$FNCNF>D<7>:+[M\M%7L<$E@ URV6I@'I-ZTY'[!ZDK,N(8$JTP )#,%("4<
M,$'-7QDV',.1QCGVZG5[:A2O>&*$K$2;.M0UM+7G>7(YG[-5O6L-[WFT=QI9
M-[*X&J^!:6)CGZV):$_-;I+&QH@-:?L@B-5[]N08X[:9[7/SJ*-L[X<'KWK]
MN+)9B^O'C^:[L+Y=2'O\]-V>.]F-E*ZP4BE"LY)J@/,L!U 6%!!2% "G#.=Y
MJ;&@7GH@<<V;VA)F8_)-4Z=E G*;,:0V=M\D"^6YGHD\FVYL]7QS-##-^1?,
M[B:T\;"9S]>[^=QY^2S5LQ[HCU]'ZV+<5"MJ/8"]HK;69Y1 )5U5UTIM=P7>
M6;7>32GO8Y>"4+]Z4']7;/7%?$74C$BH$+'KSBS- ,Q+"AA!$G M4:GR(L_]
M"BN\+9@:I9M' 'D*['J#[D;+@T(Y,/.VMN]O4#7FWVR5" S#KI<)5]U&E_4A
M:9R(*,(;BE\L05[O\<<5YPV%YTBH-_A&@4O>GW:8AZK^9N_\0;]2?/UN*[?$
M(<Y1*A6@G"  H5* I1D&TE!96F)9% +[$%KO:%,CKT-CFP;5QMPK5*_ZL79<
M#,="<.A%\17@^2^/74")M4SN'6O<Y;*+VT?+9J>+@NN,S)UDE_MO([-=3?'N
MBYX67.F<EH"GN#!1$H2 8** D! IA<J"%YEG@='E4:=&+IW126=ULT(Z*(H/
M9AFW27!<S,:&=N@U:@Q40RJ-W%&*5V+D,.;8M47N,)PH*O*X.%CAVR:'"[M\
M?&L7D'?FNU<W7;1F&=12<BX!844.(,HHX(PPD"'$$49F'8.8WY%ASVC3.S+<
M-]:>%7[OS/66]SX+L!OA1 )M8)IYBM;&SN@MV1S@B"?N?7:DL;6]+[E\0MK[
MXB5^C+&R1]FV$-LV>:S;G$=[[-O<<R.;R&6!J<TPHC07 &)= @)%"0J<:88Y
M+XK42;K$9;"I'0^VTFJB,SI9;8UV9 PG@/LI(S9LPW-&:VFR,[7CB\LJDO[8
MR:5HJJ":O=+1,#P8=:)8.I.P#S@M"]LK&FK-\B)KZ-7I'J/PJX\W&X+UNN:Z
MW@E6^<(L3=5JP>8O'^KU\MXLPIKB\L7=.YMPWB:)[A8P!3;W*X4"E" "(!-V
MKSW- ,,$%DREF<J\FIB'&C*UA>7&CU889N-)LG6ETV%8W('&FRXG^HKU9O ,
MND6$8\S+P-0_Y)0$]YL(Q3-R?PIO,YZEGT4H6.?Z7P3?;V09C:.:ZD9]_LLW
MUM5<UW]3]5I)$W0W$J--5/B&5:N_L?F#FB&<%EDI,Y#)% *8*P@HSB#(4HQ1
M64A80*]JR.=Q8VH$WY2U)])*ZFAC8_+#&CF2T,9UWP<WPI_^+ _\NH@@T'&L
MRM%U#UD;-)(.CIND!:39P6@@N4DL'LG?>K]1XZEW1)G0YU;VN,Z)/X?J1Y2)
MBJ8($L>:P)RAG=3_!^V1S31+2ZB1Y#G(RA0!2 H!:$HS@"G.4UB6N$RY3Y)Y
MJ"'3W&B:[[Q)OJEY6^1F.]!Y)A>%SH[;FVL,S(<^0/-.\MQS.F*VT95(QDHZ
M"C5CW-RC*\$Z2D&Z]GZAIW.K[TMS)_5^N>B:7K5MR6<,\K144@,%=0H@Y0QP
M1@F !=.Z@#3GTFNKY^Q(4POUMX;Z'L.=0S++4PU3DH.RY!3 C O 4B4-L%!H
M49)"$NU[RAD!RW'..'\WB^V&>IJXNC-[HT#J?=)Y#F+7<\X(L U^8M'9V K^
M;3H2?FT-C:EK=0F,:&><Y\89^83S@KO'YYN7+@C48!'BX?YA;A^(X_2+^E;^
MXZ%>[WVS*2VS0E$&<D0A@#KG@$)5@H+J4FM*$%->B@I^PT^-FW^K%M7]PWUB
MWH[K_1Y3O$L]:GI-L:T3OI(M?E/C1CK# 3XP$^T9GIQ*\:J3G?%GA.X'H*TP
M.&.IP?@-/JXZ3! P1VHQ87<)E/U3ZYT*__XWZ,MRVWGUM0EXUX^WO&Z.0V<8
M4B0IXB"%YG^06,7\#&. "IJ71$I9^-&AOPE3H\2#)>*NIX=GD_B J7"COV$!
M'I@";3W^0>./_;7Y1VN\W2!^0GVV%,Z>WB_G\Z9%]$8/Y^O&P8AL&(YN+#4_
M?P/&E? +!NA(MR_\3J':6C\,T2Y7CQ^7\TH\[M1>$&=FT0@SH*7& '*5 9(K
M"FB).*)I7E"._$2V3@\T-:;;V-FWZ>6'I!N%Q<!G8*+:FGB3M$8F7[L_!VKS
MUX](-'VM,\.,++35[^RQXM:%SP?GT0MED\(:0="J_N<7<Y].RIN+#$L)"6#&
M0;-(Y"G@6*5 ,;-T+&&&*?(2[NP9:VJD<&!J8FU-K+&A0ND](+ON,46!;O!=
MID#40I+I+^$1+YG^[$AC)]-?<OE$,OW%2ZY5[#-+.ZM 5[]?KE7];FF7<POY
MIEJPA3"ARR[/M)%:FQ%*2%Z4&&"B*8""9(!KPD&F*8$HSU.$O8J0 ^V8&MWL
MJ]-M'+$[M<:5FZ1QILDKW+JSERO=B=AY,E+H_+FQU0BS,C"3#3DA5T@)!L$9
M76;0SXIGDB ,@NJ\/&'8[<+(]<M*L?IA]?C9=N3J=H6U+#E/A0 ,26S;L3/
M2<&!9)HJ$Z=QJKP*K4^,,352W)B8-#;Z\=LI"-VXZTI@!N:E0TP&V CO<3\2
MCYP:852.Z''QZ?/?]]'0[1=I-\"KM6IRPY\*I[]X_(W]8[EZ.6=U??NSJF<D
M)3J%10DR(0H ,RL[6)B'GV)"$4L95ECY[<IXC3\U3MB9#^9-?<511X#DJ[7;
M,QSRG177'9[!L!Y\XV<+\[LPF ,V?X+ BK8GY#?ZR%M%0= <[R"%W29PA6@I
M\]MR;JZHVRS>6<HU1;F @"M, ,0E!T1* 80N8"F$8I+D/GFQQT-XT=5H&:_U
MGIW_ZW^0/"O_J]%"73]Z+MJ.(<70*EI+"+"D&L""(ELTF8,,I0P5*<J@Y+/O
M36[TYS5;K<< ]NEPP\'[@IF_"M^"F6,495XJQ5(*I"B@;?6& :&9^7:FD#!=
M$)TSW*'X>B''PW SV/013!7,*>$*<*ZH>;01 5PJ#@I:8(D%4@9@SRX-5^$W
MDM)*F]1@V#116BO1:*,MU!\):U>+=F.@ZXYG7IQ6BJ695OLI)I=- </5R#ON
MR%R%YM";+7O&_>]-O=/IU)^(FRIG$8FU7W(\P+A;(6<=/-KE./_)J=6HOEFN
MM&HZVM7_K:J[;VLE;\VSSNY44TKYBJW57LTJ*G1>Z!1(ILS:26L-F)(%4(@C
ME4()LY':PD=U:VI+LL[VKEG\[Y]?!3>6F :^SU[:.M2786@6'ZW4=0^@FV0#
M4=)AU':L3RQ*?[(*V)!YGWQ%K)=3_X]4R(9,Y'@5LT'6!4BNO5):K59*?F$_
MVPV&KE.?371KVI?II;6WGJ5<(F*6JT!C(LQKVDI+R!P!FN90JJ(LA')Z37N-
M.K6WZ,;N9,U^)JRQ_"81K>W)W!AO_M)8OVK,]U 7<YZ'_O?>8.@._%K: FML
M[O8N;S9-(Q-K=[)O^!"X>LBW#8'O2#IND7#V4W3SQ:M7VLWY9N-IO/GZ=R#V
MYGUQL%#XX3#-"V>F,L:A)"705$  ;>MOJB0$2)!4(ZV9SO5LH>YL38C;\NOT
M0$Z/ FT?A?WAAGL2&K.\=;Y/8>BV$KD"EV>DX'Z40G2[>T"()]1]:I"QE;E[
M'#TAQ=WW:;\G7JIJUM8B--4GS'965B9>9!NATDP61'+( "9*VFX &E L2D (
MDA!!EJ<9<XGD+@TTM>"MM379,]:N/YF?%.Q%=/O9("9F _-!*%S.I."*Q0E:
MJ)7XZ]WRQW^86[2,8'[8$<'%&X]"!:[N;<C ^?-A <";\V?*>W6?M_>VF.G?
M;1 L-44%PZDMM60F."#2+/D8 [F4'!&,F6"EWW&1OQ'3.T[:+XW>M_0F>;.?
M\E+M<C':A:)?K!$P76YQR+!3,# GO>G-=KE)SLU-O @F'+Y(T4V  :-&/N$
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
MW*K\PE5A5/(WMFKJB3^QM7JUO&?58B:PR#7*-$!9:19&VA;TI20%B!*>&_Y
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
MK<USO\TJ-I&G56__I*RUU;QJ]JQ.-Y5Y_=.V5307;,A"F2_)8CWCM$#F=:V
M^3+8WBUI ;@N"R!DEI60%$A#IV*JP2R<&CVT9B9K$_3SC1CGIF:=-[758L\I
MOS H_O2Z14C/.FD#D]C6MWT%GZ:[Q*%_-Z>E?6Y.=Q3;M6BZ23J?XX59@TU'
MI @LOGVC!F>#P?LT;AMNH,#DHZV2Y.E1&_F!KH'8K36\6C\^T75%J"AP!@L@
MD9  0@X!Y3H'"@L.19G3PC,WZ6J3IO9^^/QP?\]6C_;,O)7=Z*QO=X&9"$ED
MNG[>W-X#X\[&T">4EWB[=>0FV7CB(Z/LGRH5#=I8F537&S1NHE4T (_RL.+=
M^4JAN5WOD!F2A0G,:0Y@)BB &E%@0O4,% A*5$@NLI3YJ%.>&,.+.4>0I.SB
MLT:[?AF8\WD*2H'RG"*2@I38)8[ &6"YQD 3C2#-D,PS$:34%PCE&)4[)Z'\
MS^NQ='N/7(G0P"^&G1B?6P5ZN #?L?NQ9??V1G@>L;UC%\]*[)WX:&"!WT*L
MK%S?*]7^^7;Q=O'#O-*7JTK5,R((THR6 .O4T&?!-*"%-A$KS'B!2EQJ33:B
M>FX/?.]X3E_L0RV]P1_^K7&>)7J]N+H]^M=C-5+176=G\LO&TK\DU2)QP<Z_
MGLX%DUB%<[UCC5LAY^+V42F<TT5AO/%>_7$KA#TUMJIZJ^7"_"B:Q4!77/>T
M_#35&&>Y@B M.+?''BG@+-4 ":PX*W+.2NX3.?@:,+6PXI.RNQ )V_I@)3CW
MG/"C&^_I<&.@(4$>F)2,Z<G.]N30^'%J?T/1BT1?WL./RFBAX#PEN>#[!">W
M- V];2_*II38_+#Y7;?AO;_>O5ULCIKKTPOBE\MZ/3/PJ8(0!"0K,(#*:ET5
M5 #-!4(T53AGRB_,&L+,Z45GK__U8/>:P@^)!IE--VI]MAD:+<^F<:7-Z.L$
M%^S/VW_HG+Q)]KUH&L]L'#T\+SKXF/4V:B[.8',1+U,GOHECY_$,!O*)+)_A
MQ@I[<;RK%K;M6%-&\8;9,ZOU8]=RX\5RM5K^85Y?+YEYFLSO9[20%%(N@<J@
MW68C!#!9$%!0EBN!E(!^P;+/X%,+E#=-8_C&T$1TEOIQO=<$N''X4+ .S,W6
M;'NFUA5,;2PW3-Q!O34^>7D):F^N#<$L$H=Z#3TJ-X: \I3S@NX1& 2?++-O
MU7;,;_2+Q\]LOI6_3RDD2!> I2H#D*(<4)8AD.>YPI"5VGQ=O?*Z/0:?&I>=
MD9.X23;FV\>2/R;6 \](UF=*'"/4@8 >.O+TP'B "I,0U&+%B#Y#CQO[!8!R
M%-.%W".TVY!9O)J@L,DX_;\/JZJ659-LTCT_ C,H429 D6)#:1Q"P&"I <TS
MK$M4DI)ZA6<7QIL:BS7F^G8*ZD?4C9$BXC0P"366-HO9-O%[W]@AQ(/<@(G6
M(JA_M)$;!#FY?MP>R.VR8$W[^R[9I5E0UA\>UO7:?!U,##8K4,Y5BC'@&@L
M2T$!TQP#>YR:,D(XE5X!4=]@4Z.._;9D-TG=F)LL=_8FOU2+[M?^,O;G(7>C
MEUA #LPM'8;_/WGOVB,WCJ4)_Q4"_:)1#01[="$ELOM3ELNN\<)M&W;6#@;U
M(<!KIF;#$3F*2)=S?OV2NL0]%*2"4JKV17>[[4Q)/.<YTL-#\ER^UAC6DL[
MGJQ!2]9?121<N?K+0XU=JOZJTF?*U%^_IV^$1GUF^_)K::.&2$8RI16&6$@%
M49QJR%1BVQY&B>1IFC'M%<QV^/BIQ;%50H&BE=$W!N, .=>@B[YX#!YET0@V
M Y5H(6,JSJD<+(CBX.$C1TV<4^PT3.+L5?V^UE]7*_E'L5C,.<^YIKF G-$(
M(ITHR(E.(,XC'?&$)TAZ14JV#Y[:C-[*Y?=I;F&B>1IQED<P3>SND&(YI#F7
MYF]*8&VC30F?/U5=&XW+5FZ& ^MXD.$@^YF9?PJS//!L%K\#C45"Y-2N.A/;
MZS9-($EL^12448P$%9@D#6AOEXXGQOTA:X>8,&!NU-\'@H%)_^K7Y4WVQTH&
MHOGM8T<E^&-ECJG]Y/>WD;I9+[Y?&J_NH>"+NJWUKMK\G*:QCD3&;?V2!**$
MQ)"F0D&=Z!2E+,XSR?S:E+D,Z_.NCM.J;"=JW=L"%%MA^WV]G:C[?=FAD!SI
MJZ\VD/;PK"0&[Z_CV9L57  *S!B=0[X*F[B <(EIG.X->.IVSW[4J;&?]-G?
MSS&-6$80@QG/;5DE1B&7G, HS7.6YE1R2OQHJ9<<T^.IS^7J>[&V^[%Z59HE
M9I6^LF$_?"/]^YE%I9HFF?%[E;3)OX2FD.)$0X&R+(NB.&-,^"SC!S?*&*O]
MUS6)VU0R.- #SRWGCT>;B@V5#O9\]/Q5 Y^2NJ(XY''I51E>_]S4%2:G U3G
MA_4HB7Y::^O?%5ML'M^P4MF(NOM2+:4MXV#FR>=O2IJ/_J/ZL7EGY& +6WGK
M7TH6YJ_VVO7/ROQ:W3VH#,^%QE((+*#.: Z1C UY9@F!--9F3HLUR;73WLJ@
M4DYMH^9NN7QF"U#:@TGSA1=MTE:Q!)M'!8S!;6!=L6% &$W,)?\ C6;5#]:
M5[H!]J! YM,A=+#7H)NP)V/<H0G];$7#6DU@]:R"I4&E:5VLI]&UFF2MMJ!6
MMRIR.-L:O5(9U#J#N\D8W:.*_12,/U()_"F\!'[%](<V3F<E_L$&'Z^,_]#X
M'?0 &'RPGCV9[ SV7+[LG;O.-9-4);;Q(L*165@1#:E*"<0\33417.O8*[KB
MS!A3F]E;$8_"*GJ'4IR#U6UQ="-8 \^46YP.0B<"]EVZK'VHCDMG1ABWU])E
M%4^Z+'5<VN]S_US:^BN;%\L_F[NEM.E_3W9R_?G%MG2Z^U&LYSQ2"*4D@2+B
MQ"P-$@R)IAF,.<DQB2*<8>;S^3N,.34Z:$6>55[ IMI$WHIM%OJV"]GO5G#/
M%FTN\+O11&!0!Z:-O<[1]X<[\5=0]"80#UP"$8K+B*,2C <$QX3C<VO?N'!#
M95_4DWFS'FV*X"]5[[C/=>! /4^2*,TR;*A'14I#E(D($I+&D,68:2KRA,7;
MBCGW/A'BUT9V^F .L[/O1P[X!.5. ?"\-+B?_-P6P7@HV;?^SHN#C=Q(*A#D
M8\6;6QSWI 6UN*"6-[ROXXY.L*#SJP..''?N"L!IZ+GSG7TC1J5=KQ4;M;"S
MUM%YY/I.&&(LE9R+7&<$)RD4*LLABK,$<DTCF-$,,9'0C!*O>N6.XT[-7WK'
MBO*O?XFSZ)__FRV>/1-;7+%VXYP!$!R8>'82-R[2<;C"&K12APQ8]8(I6"2K
MVZ@CA[AZ07$:^^IW>S]"NI/_];S>5#5Y[E=MS6[U46UV90SO5V_8^K$Z )9*
M_OSRV]I*LZUWV-2*+=3ZCJ\W)1.;>88BE6BBH:P:1<;<K/0HD3 SI)90DF&5
M>?6+&D+(J5'=GHY@LS)^5Z,E6-HXK>:\?57]2QA-K3=6J6KS95?;4I]LJZ=G
M%=1!W@,W9GUMZPY,PT>&W2H(/MJ L?W2K/;75D_P><^V/UE=S0OP-[!5%^ST
M->O<1N. :]TA#1*(\ <1<=3984B0CZ>20<?JTY#]>:F+AS>K\FE5AS(TJ<8<
MTR02B$"I,(=(< %)*AB42%*<Q)'*A'OPP(5!IL;[M9A@3TZ?GN(7@'0X?@\
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
M2-(LA5&4)7:A2""-<0YCG+*82H&5]BIIY#CNU CHXO+!2@Z-Z-#*[NFU.)K
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
MQHJ*'$95PQE)S&(T2CF,!!%29HJ0S*LNE<.84R.>SAC#&;""@]]KT3W9Q\4
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
MJJ=&TD:(\HB;_V*8XM2LZ9CQS$@F4IBK-.:"I"G*I7.$:,= 4V.VG:A5[2'
M],:6_WHJBP6(9\"\DJE']&,7PMUL%1*WH8]V=I!5%2QJ.4'2)URT"S"/<-%
MP(T4+GH)P$!AH@Y@=(:)=MT_7IBH@Q8'8:(NU_MQIE3%_.Y9%@;J#Q9Q^Q;B
MA&/*.(6:8PD141GD"<M@IK","4MI+ISB>,X\>W+,6(L'6OG<ONISH'4SWXU0
M#$UVKB@X?Z,=^IYQF]9*_/UA]?W?S%VUQV3^LG.4SCUKE$^T0XGVJ^RZQ/]#
M?&O\HLW+NV*ARC?F^WY8E2_S2"*M6)I#2NPBC7 &*1((IC(AL<:92F+L^C&>
M>?[4/LA:1%#)"%HAW;_*<PA>_S)OQ&7@K],/$J]/M$/Q7I_IN>>-]JEV*+/_
MN79=UF>]D40Q;9PYD9CU128RR&+&(4J2'/[?[MYU1VX<6Q/]/T\AX!R<J0*"
M/:)(2>1L8(!TVNXQQN4T;%<W-NI'@->T>L(1V7%QV?WTA]0E+AD1"E*BE.I=
M0+OM3$E<ZZ/T<7%Q70C7.<@$3*%(*:%Y[KZ_.#QX:A^IE<S'_CV"R&6#T$WQ
M@;]"*U0GX_](>1]COQL((QGW;F!X6O3G&K=;\$?7CVBQGTMY:J%?^'TW;^Y'
M\SRE9.DQ>;?9[&Q"T(.^7WW[MEJ6R;5S;6/#*6/V3)K8-*P4T(Q#8"NF<)TJ
MG,697VC:S3%]WL5QXM1L4:6G6NS*?5C4@ML#65&*7E4,]?/3WH;?S3,;%-*!
M.>[C"8[OCG"LY*V*'(1SO#IC$\C5>GN\49VKSNH_=Z>ZW]B->OZNBL>OMOF<
M^839HVI.U4O?[.9AM]ULV5(6R\?28SM7$F6)0!1DMCT<QI("&HL8)!0F))6I
MTJE3Z:9.HT_--&J$CU@E?75&M(E6![FCLCP(_(_Z,,,>*E47>9XD^<T28790
MQ('*\\R6GE: <<P C 6C#.8T)IX%1@>;IW$6#I>9&FENW%:2P? >>%79 UT+
M'AWBI2K9HR/A9]57$6Z-Z81:H/7&;^Q1UYY.L#Q?A[H]I,LF^] 0M8R;L$6<
MU^JK6F[V99_MX>(7]F,N$<K35# 0$T(!IE"8/;A9DGA"=0)Y$B,4SY]*S_GG
M+5MO77;BSJ/[?'7/91CN ZS;ET=L&W'U6"R795B#CBH)?/:R/M,0TUAA;78D
MMA@/IQHPQ07(I19<$$&(3NMI>+.\$0LW^"0T$HPR!;8%R<#@NSA9!H%SZ'.*
MHZ;65>#;B=C122Q)V65@H)?;PX\S",YCG>&&P]O3%^2-6KNKR/UQ(WJ2O'4\
M=33YW]YM,UCG5KY5TG91-,^K"X37!2CG29+%20;-]H^DS#"]%H!JI$#*$YFQ
M&,8L]XHBO#'>U#9\O__E\U^B6EB_/<(M8-UV!0'A&IB]F^)AM:B7F\"$,_P=
M@0EDZM\:;53CWE'UY^:\ZVU]HI.-O;NMZM=6%M'GKTIMR]:LLK"+&5N\+C9B
ML;+%LC:O?II_/*TV;/'7]6KWM#&/6.SLAL)>4P41&O;;QQ"6=93FN9:4:9D:
M4U,:/C(F/Z P8X!1'DN40IA+[A_5/+C<4^.U1H.H4F$6[96(CK4XBM"M"UEU
MRA@=_K5P8],)3O; K#S /'<,P!X-]:"!V\-+_0(!WZ--Q>5 \?&&[^"+<FDW
M]N:'$CM[S7&WL8_*?+++[5PRQ0BE,=#:MOI2$ '"% 2QYAG3&D*8N$>)])5F
M:LO.7M8.G1W#3(^#\V1,T >F?_>>C8>9.=:H3,L1;26/AOB"W/TO8T[52%Z9
MX:?,SUD3"N)6%T[O0<9S[(3"X\3=$^RA'?NX'2^Q[2OL\]YR'XR$==DW@6*!
M9*) @F-;(%0H0% B ,V09!*A.-%>KJ(@4DUM!6PJ%D3%7N0N)4;#S)C;KFGT
M>1AU3W1[2S0[:Z5I>]7M-0O8LBXDT*$ZW 61:=R&>"%A/.N?%_3A'38H_]NL
M#^^^/:U7W\L]U">U9<7"+@EL^;-)A!4(2<._ ,DX!IC@!' J,D!9@FF.N?G/
MB8@=QYL:Q5J)HR.1HTKFJ!;:PY1UP-IA/Q$6P8')\09X76+D'5#T,/G#HCF2
M4=\;53^;W1VC5JO<X3'CV=WN.IU8UAZW=2XGO3:L?]38I3YHV;=RPU0C#'-#
MPD@9.LX( 1RF') 8)RJ/TT1QXEE9NGW$J1%R+?!IL]_FO-"W::<[[F[6;5 T
MAX^0Z05DE_K4;N"$*U5]8[RQJU:[J7^A@+7CC?YIQ)^5L2*+[<\W/\17\W*H
M#^:%F0LJS*;;&'H9$CG RI:RY!B!/%:Y%"EC:>KD=;XVP-0HI9$Q:H2,K)3N
MF<0706PGC!#0#,P/GJAX)1.WJ=XIF_CB T=+)VY3YSB?N/6Z;A9#&4#]BFV4
M//;DW:W7]OGEN=C/PR4?V4_[H[L_V=KL+,LSKJ/0ZV<AVF]^J+4H-NKCNA!J
MCO*,*:0H4!S9DRCS!\N) )HARK3"6@GJ'BL]LO0^7]6(L=8VP+I8+A\C7H?\
MAB@:-]8+D6.H4Y)!D&>Q EA3!!A)"! QB5$J<D%8[!JU/?G78?BH[S=5%M&_
MXYO@9AI/<&Z'7D"M.J#4Y^10+3I2VK9V/+ZN5CPJ-9]%M>ZST[2GLRRI!H&H
MA""<Q3[RG 6R^\>2>M3=P\A3\7P/,O;P7=TGU7G86[.N;M7[XKN2S_WFST;_
M?:/T;O&^T&H.B?E/,@)HEDF )<6 Y[D D&FSX\D4C:572\(^PDQMA]0("AK&
MN?NV6F^+?U5\]M$C/RG(5+DZ8\:9@,']-/4A;Z4'*!6Y=(IXMBQ4ZD16GY!>
MG/ZH!G/P]!!E9-]/?]#.W4(!GMFUWHS2:FW&+BM(_(TM=H8^<V&8,N9F6Z@P
MP%AG@&J!02HE3Y.$92P6OA5FSD;Q^2S'*0VP%[(J'#.+_M_X+S&,GM@Z^FXE
M_H^(54UH_F4N@?$LCN.Z3,!_1,O54AW7$/"M.G,^"6[$V!/8@?GN@.CG"M%2
MP%E98R9DCY06%(+5D#D?8>2J,5=5/*\3<_W2'BT2"[&M'UD?SAJ[BF4J9H!@
M!0%.4PD(B@E 6B 9YQG-D)>5=7&4J9E/]YU+2UT&T>TS[PW-P!_Z0;[J2P]X
M<.T$0<CVB&=CC-\?\9J:%QLD7KVX0Q"11Q33OHG)>]O9I#G1^GD419A2(O),
M)T!0F0&<<P&8R@A@4,<D53#7:>(<;A12LJEQBI$,-#V35ON>/HNR[\_B<%3H
M$5H3=![;*>I%9V=@6O./"#VT9"K5VY_(_W2*#!UX(CVBJ5YJ0D>*NQI[8OW"
MM(8 OS6@*^B XX5^#8'329#8( -T,\&;WH;&_N3%LAS2IH$\+NUN])TT Q2Z
M8'MW0>-1N%L>!YN8WYFO2QZ$.OI=64YDSE0".4TIT#C7  NS7).,:UM,2R4D
MA21#LFEE^,7=M!]'>B>B.>V'^&6$Y;VJH>.]D(\\\VX;D0E-Y#@F0*-P=*3Q
M+#KH'!TK7?MO]UU@R]:71\I%M>;':\9IT%ZI?KA-T[C3%6@7-I+0HV[KQIV(
MY_O$D4?O&/XDOBJY6Z@'_5KQ;9FP_T7]V+Y:V)4XEK8WD8A!KJDRZY+ =ANI
M@( Y$DI2&N?0Q]?4-MC4MH>-K+9^H)76,W2D#5;'>(] 8 T=I/$,I[IB261E
MC4IA [JC7# )%031-M2XD0L.2I^%&[C<$S1@LHGS3['.*,XT0"F+#6?D"#"5
M0@!3HSM+M=;*RS_=/MSD6*,,1>*GH4B'((_*!&&;K_MB;%T3+F[,@B/%!,-V
M:)*Y%.'5$]90P5S#Y%[<&&P*H5,WLBX<[^K:N>WO:K'X/\O5G\O/9NN_6AJ+
MRAYOKN?&8F$ZX0J@A%. 4<H!PWD,;) UA21-4L'\>KA=&6EJU%,)&UEIP?^U
MXD:-O-7)[_4-CB?"[=P2%+>!::4[9!TZO]V HT</N&M/'KD;W T%S_O"W;IA
M\/(I>_?AH8:O[2LG,IY!D,*8UF$X,I4@QU1P23F$4@U4-^6".%,CF8-#?F&D
M&ZQ*RJ6)<3-IQH-[PJ=@)[7"7Z0B2@NVXY="N23,5&N@M #7H_A)VU,[LJS2
MA6'LNESQ1_/J?E;K[X50]ZO-=AX+E"?0%B9/I 88:@:H(@K0G&091U(GPH]$
MVT:;&D?6HD7"R.;)D*V@.A)@**B&YK=*SJ@6-+*2SJ(&N_LV[/R)RP634+S4
M.M:XM..B]AFK.-W4C31L5&2U"UPL5G]6G?1>UV&37]B/R@]>A^@A(A6'F *5
M4@PPD1)0$1- ,<RIHEFBW7IQ=QA[:H32B%D6G]SK$>T5\2,9GTEPHYR!H!W:
MI_3F/FK<I+,()B"FLTOHSJ(3_$MM!HBT[ !B(,;R&7E4_NH R7,VZ_((?X_4
M_>J[6N]]KX(1AI)8 BV5C<"D"'!C^  <YWDLE<KRV*G@V]F3I\9+I7#>'NQS
MP&X[E#K#,#"'."/@Y2^ZJ&TG_]#IDT;S!UU4X-C_<_F"KCL1OGVW-(\J0QBK
M!A3<6 XPMQWQ5 8!SC@WQ@/"0!)(-(*$48[\]A]G8TSM8SP^AWV_6CX",^BW
MZD3V('G'OB&7(';=C?0";L2SZQ*S+YTPZ[ ?N8I*L%W(^0@C[SVNJGB^X[A^
M:3=*>*_,NJ[*F-#-Q]6B$#\/P1>)A!DU;P9(1!Z;-9GF@* L XC+3"2$*@R]
M.FBWC#4UBJB$]/OTVZ!THX!   U,!964LRK.W'SRE:3#1+$X(!*(!MI&&I4.
M'%1^3@LNMW0]//[;:K%;;MGZY]MB83Z\>:PQ@DFJ;=AU"C!D.6"Q3:]DG&L4
M8X6Q4]+4U1&F1@7UR>=>RJ@2T_>(^#F.KD?#/= 9YTC8&9@.!\%7E.]Q /S\
MB2,?_%Y1Z/S ]]J%W5;YOZY6\L]BL7CW[8D5:VL[E.>$B""*:2:!@CD".$DQ
MH+$@@",6TQAFB%*GXIOMPTSM@VZDC(J]F'X+_14TW=;X_A@-_%DW LZB@XC1
M^[8C;.]5O1V#0 OZE4%&7<O;%7V^C-^XNMNG[]*AQ_SP?JUDL=W,<\HA%S(!
M,I6E'PX!8GN5YIH@27.50YQUR*_RD\+I:Q@_3ZKI$+QE/R)12>I'')YSX48H
M T [M1YO]A>5_ &;A/7#+Q!)>0X^*GEU ^8YJ75\2H\Z,#NQW:V+Y>/=4GY2
M92?Z.RM E2/4.-(-R?'$B 8X5V8;0Q,!N$@DR*!4"FO"8NT5=N$\\M2LH1/!
MRWS 6O3H('OGT'OW^7#CND%0'ICF0@'<K2"-#U@AB]0XC3M^X1H?."X6L_%Z
M0.>HW+J)\(,^S@>HQ[/!)9NS JB;@Z\19SI&),D EE*9/V &&+3-%0@AG":)
M2%*_$YU^\DR-\-[\<V?VUQ=J)7N'Z/::)<=#H?&P'_H J3TO*?IC$/]Q(/S"
M!>+VDF;L2-P0T%T(Q0WRV&[<.GPC]_?%4KTS3]_,A:"09139DW5J3,R4 28$
M!TE&4F2,S$1+K["\$66?&F?7&\2][K.HUCXJU2^MJ@, T1$"MNC]:7[ YG:"
M@+''+!11B86GR3OF&^:VADSTO1EXO9GF*^.]@+W Y 5:[,:4?-2%\06FY/DB
M^A(B]"V:\N:'S:K9%9NO5N2C:@OS7! 4IQ*"G-CX=4@)X+'* !%4XSBV^Q6O
M/I,.8TYM@3L.KSH5^EFQ$-_:!P[PNZTB@4$=>K?1'\\>%5=N(A2\\,KU$5^H
M_LI-"*Z78;E]:[ *A0?_(Q-2D3@QUGDB-,"Q2@#-E+'8,<JE5$F<2Z_Z36V#
M38U\+I60Z^[S;879C6M"@3<PR73&+429O*&\MZU#O71)NIL^6J=[NIXM?5?&
M1GIKY+PW]I)]XM^+[=?[W69K;+'UP;-'->2:QQC$E!& =8(,E1A227/):<XT
M2['V.UIR&WAJM%++[7MBY(BRZX%1>.P&/R\J18[L!Q$U0D=_&JFC1NR!G*6^
M8 4[+W(<=N3C(C\PSD^+/._ON+]2C]9*^J2>;).TY>-^I:6"JARQ&"B8V-@^
M20!3- 6)9!1I)JF(O5CHVD!38YU:SF@O:/>Z<=>@==PP!0!LZ%U2%ZS\]T4W
M@ BU&;HVS+@[H!O*GFU[;ET?JN;(?=D%_-VR_M$#7Q2/U<'+:K%XNUK;!IKS
M5$B2V3IP*<*&-&0& 56< TT0(HP11;%71<IN8DR-4B[7WZ@TB8KE_N<'9:(_
MK#I1K8]W"F&GN7,\4!Y\1@;FK.$F(T"M%!\L!RNBXB3$"U=7\0'J=MD5KZ=U
MZ#IUSYZ*+5O8:.Q[ME[_U"O[Q#M#W%+)3VJ[6R\W\TPK1!2!@,7VN#=!&3"&
M5@*0YBCC.E<I=.\FY3+BU&BREBY:5^)Y-!%RPK>=WP9!;6 JJ\4MDRNB(X%G
M40/EIV&@].BS%!K2D?HG]8?6KR.2#TRMG8Z<'C1>!R,?O4XZ$WG=V#66Q[":
MVFRKP]"ZG/4'M9TSFA*D*0,JTQ)@)3) -*,@21 FN8(9ST2'')9KXSF]_N-G
MJS3B1JJ2=!8ME6>BVU6$,Z0AXM26*DP5P%H:A+$P?XNE0CEB.8V]3FQ[03MJ
M'-)PF+K9[R&0&GA9VX/4U%:MI?QU%GUH0:M#:$P[%,'B6*X,,W+02;NRYQ$B
M-Z[WKP?PNEZZ;>C(:OVT6ELF>_7SDZT1IHP2!]^\SKF-XE @5EEFZ"'5@&5Q
M;(QB!1,I4Y'&SH7EG4>=&E?L!8^.);?!97O9W6L(N&/?3B.#(3KTKO\VF($/
M13HAU:DP@?LHHQ4K\%;\N("!_\W=[+\[:U&^-@^_^U%LYAP2$2N*@.):&*-/
MIX!KD@.=I$I*26D6>]4R.'GZU+BE%"ZRTD5_6/D\/8RGR+D9'IWQ&)@9W*'P
M-C NJAS(JCA]]JBFQ$6UGML/ER\*=1A1MNI[*J,S?K==;]A"[!9EU?4S%UX9
MGKI;;FW6\-Q\RCCA"0$QBLUN@\2IV7= "1*58IQ#BC+M]9$'DVQJ!-'(%EGR
M[7O\T'6VNIY(C# '+W)(<:17]'N9?7C0[,*YQ2S:S^*GMED,<&[1$_'!CC*Z
MRO7"IQL]X;Q]X-%W@& \_LV>6O^K:IRA_\J*Y<9Z_-1FGL58F6T> =IL^JR'
M2 (*TQ2D%"J.8YPQ03OXX#Q$F*A;KO1(LR.AHU^2ZXUG>L]#9P[N!>N+LNPQ
MMBL=6=G#]_?Q!VPXDKPZ\DO3X"U('(CNYB,ZEKT]:AN]E)^W9C?Z=;4P]V^J
M\@!SS6DB)(+ ]M\!&*$<L"RE '(*LSP3N19DOEW9(PZG+^S6@%X&Y'[8X;ZM
M+W:,:''4&MXF3&YL8G8M]W^/5"FY9Y'<6\"[$59(. =FJ??/,'S3CII_B5Q'
M*$+5R;TUW+C%<AV5/ZN8ZWI?_U;QSSIHG/:L?];N7!MJB5.A@4(<FOUMF@$N
M* $XR;CY'<R8]BH9T%&.R>UFC[O*'']/OU2Z>-I/76?'C9I&P'Q@QCKM4_^\
MH4_%8L>S,%8;^PYH#M#AWD>*%TJ^[ 35]83,;H_K$&?WL/VJUK8HC#$RU'*S
M+QKX6[$LONV^?;0_6RV;H7]^4-L[^8_=9ELU0_@!YRE--"%2 X1C#C!39M>9
M: FR!*(XXR1E<>RQZPPBU$3WH;7XT5,E?_E1/ZTV6QN^5ZRKFDR\WE@]F3LC
MMM=J4X8]6';8LA^N71+"3' [!8\W7^,0<:E*=*)+$U313%^MSIZ/?]H8B^B@
M4<G;<,PI\@@N''.J1@H\''[*_ (30T'<&K38>Y#Q AI#X7$2[!CLH7V*FMG*
MNM<J2<.8))@B"(04ML^>5L#L)&)@)E+)/%9Q3'2S+KKM+&Z.V6'9&WC%ZUV^
M^S;.;CN$,-A-N4CWW3=[Y!"Z"I8#8D%K5[6-]P(5IQS4OUPGRN7&CF[4U?+1
M-L\K2[281Y3Q)*G&F;'";?T#I %.,0.<Q!K(S%!-J@1A?O4/+@TR-0_%:1M!
M\S&8$3J%YEQ$U-$GVA.GH?V@)UT#W2#R=X:V8!#* 7IIB'&=GBU*GCDZVZ[M
MUTSH./DT8[9!"(T!3');<UHS0#7E0 NH.(TAUPGNTDEHPEG!^S9"?7)]+V'I
M]K7W1&C@C]T7G,XMA(9+K+TTPHLT#W)(B6V[M-M'_J7X5BP?'_27-5MNM%H_
M:#O&P_JS6G\OA'J]^L:*Y1PC2A#A.2 X0S8>+P.<X@PP9(NIY3S5DOM\]DZC
M3HT(*J&M.ZP1NPP[,((;Q*-:].B/2GA/?G";!C?&" [NP!P2"%=O:O'"*1#9
MN(TY*OUXP?"<D/QN[NSVJ/S4;'&_^O9MM2S+QF_NMMMUP7?;\E1B=59*_JCG
MP&:.<L*YSA& ,DW,5H43P%FJ@%"2BCP54!/?$NT]19H:N55J1!M[0AZMZN!5
M>U9@D\O6A;!9.-4O?RF657R([W%L@'ET]KN,.#L#L^.1,E$]294ZT;$^T785
MO2X6N]*#4_ER+(G>:,81L-5C.,S#N7;Z"C2V[R<0@!><0Z&>W+$U)5LOS2JQ
M^:C6Y3#EBZKDOLY:G&":)S(#F8 48*52P#E50&94:*H5RKE7-:H;XTV->NVI
MD*I%CIZ,]5.R:_3__3\D@? _HEKZ_^G9@O(&YFY,&A#)H?W7#8!&U(KV9@UR
M@Q2[<T0F5/O(&Z.-VR_23?6S!I&.MW7CF+^QQ:[T>=\M%JL_;9>$3=FZ;6,,
M4;79>UBS-%>:<@QX@E* !;:!(]C8A8P02:26<1K[4(W;L%-CG,]O[J,F[&<6
MP03$=!;M58D.NM1M#"MMNCN['2?'C9/"0SXP-0V(MC=M^8$7B+T<!QV5Q/R
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
M1-3(RMJ]P7(;Q&Y,&@BXX6V^+IAY4Z(#&H&HK6VD42G*0>7G5.-R2\?:8H=
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
M8TN*E ".& ?8_!3J'&:",\]&Y-='F]JR\/M2L?724,;ZAE75 =A$"LHES(%
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
M DYW?[)U*<;VY[OE9KLN(\HV93SZEZ]L697.V?Q-;;9*OEM6/:;G4% I12Q
M%F,),$R-D8)Y!@SMQ)P3C E*F[(KCLZLD41W^BY/B[<,S&65?-$OQ3+:E!6,
MKN?>O^RD.[K2IC21XY=%.U;ZN#9:Q']&%\NG6=5G4:5\=*1]G;>T-?K79=4V
MLZA^5\RK4H$P=(^/X:9MT'X? X@]@=X?PTV&6Q^0 <</MH_>!T-BJ"5.!0<L
MS[59H6@*"#?_-+:REDD&"?,+LV@9:VK&\>4M8L>(TS:,.V^L)QAOVA6T$+OJ
M@8)-VT9ZZ3WUK5!3EUNZ-A+ZPGXTV9FB)+8/NW+/AS7B,$$YH%AF #.I@/FW
M KE4.$5**4F=0C=NCC0UPJB$+;-I3L6-*GE]&PI= [B=+X+"-C!;=$:L0V.A
M&VCT:"YT[<DC-QBZH>!YDZ%;-XR\>:Y&KZO2'M6?G8N,2Z@R"I!0"<"$:, S
M2$&&69;A+$FX\G+E!Y=P:D14R5GV(2@EC=A>U)'VQ%?G<N#-;X@9FOXN]S"_
ME9[1W>WY'6\G>VL.7GK+>E6^?X^]Z2UX@VU";PX4OA'=)R46;+/9+TAW\A^[
MS=9*]-8 >/=P_^ZCO<7\8EF5^OBX,L;L/B*Q[M]6%BAOTC3G1"@M84X!SCBT
MI:TEX+%B@#&%..,YD] KQVED^:>VMOQ6+(MONV_1DVWQ<A ]XI7L52TVMM?;
M\P!Z[)?#;3F:\)0/O%A=ZO'W2Z7\KY%5?Q:]M@5/S1I5:U)&9)?EIDY@B0ZX
M1)8,(XO,+&+:O+/CM0D<<+)&:#LXA/23:6,XX-3XM$4<4HQNZV7]?1T]^>UN
M*96-X-SN-@_:_F2>88U19A<Y@1+;#H,#IK(4)#)#"E.S<>+I?+O:LH7;(N<R
MJ-?*M!]Z.*XJ^Y1$NI0SVI2"^BT^3DB[K1BA\1N8YB]S>"5R],OORPK47Z-*
M?+OQ:"VI[,W9/G %(EJG(4=E1Q\0GE.:U[TC^W7J(ZN_F@MM@?3JR.KOJGC\
MNE7R[KM:LT=5_O(UVZI];81G^2<XQEA '8-$9(;@4LD SZ0$QK:/C25ONU1[
M=9%\46VF9M,?9\ <? NENILRV*G1+ZH5C$H-(ZMB=*@P,I)O*<C[-+ ?:NRW
M9/H^JWWL187)(?9BYOAV#9N'-86)?FG'6!!=_CV<:"&G+9C#+:A08Q_>K.K0
ME//0E=W6&.-ENE)]?FDV*BE!F@.>V*I#G*6 HPR!F(M8DH1*&/MUAQU!Z*DM
MV9^4D;40VW*K8YLA[):%8=4Z'VP6?:\BW.SBO5M^?ZG02)^W8NB3H6'F>OH+
MKU$<5)I?B(XTZ_)!^UFP4_>7F*V77CU]1/[W6"0[3$*XPZ<.8W>L+<6>BBU;
MV).MIABT+6U>-:Y63..4Q3:]F$!;;2('1$H")!4)SF"6<>95<[-ML.DM,66;
M6=OHKM@6;!'=/3TM&G=^99Q$][MONX7YR7<5O=%:B6WTQ4SMIBBOZ=2)O'4Z
MW-:(4" /S.U'8NY+PD=6T/ =OET0"57*JFVH<8M:.2A]5M[*Y9YN/',GC06_
M+3:&M^IJ+7.M!<4XAH 21@&F* 44<0@REB"9$LXI]"IR=3[$U#CE2,)(V 82
M?N1P 4,W2NB'S,!$< Q*+5VX3_^ZYH$^^ L#C/J97U?P^<?=<F7'<MW%TNRV
MS.,.S2/N%HO5GW8+]G:UKFKEV5-%M?G[NMBJ!ZTW<V9[D<D< Q3;CSYG!+!<
M4<#CU%@6.L>2";^<ORYB.+W^H^;OW0EA*^YNHC^-C%NUC%9:1^R1%<;TBUBC
M3[FC757]R+H&F72:-C>>&6PJ1JH6WHA_U)EF%NTUB/1JW93SK8(_2B7,1 6L
M(MX#P5#5Q;N(,&[5\1X@G54C[_.LCB$-Q88]/JXMK9A]PH.N=QK/CFA2R;3*
M(0822@V,G<0 R6(.,H)Y3J#*!<<^UI'3J%,SF$Z%ML=RM=B>H0U.B#O&-H3&
M<>C@AFL0#GJBY(52J)@&IS''#6KP@>$LJL'KYL[A56J]MKFT=:.7HW*!<X@3
MF:0R PQF!. TSP"EF:$@I34S_\E<8L^PJJN#32V<ZJ]KP_F1K"4N&Q0M#M)Z
M1U9=!]DYHBH(=,-'4E5XV9RV(Q'MN;?!,VC(U$T\PH5*71]J[!"IFTI?"(VZ
M?4^'5G^EWYJWN+;YS\,E7LG]U0%PZ1)_6'YAZT=E=E]?S&1NOJX6<O-1F7=U
MN9U#BH7*D02)W4-BI3#@7 N .&:Q$#KCA#CW#GQI;:9F=]5B66OAL0I8859;
M\V&7"$3&D-B6ND3;1A6//GDOC;9+K\.7EG%"I%Z=KG+'4UCN59CFRTEAFCHX
MJCK(?5A&#3K1 9Y95 /T[_2^>31Z?&E9?=Z[D3I'_IN]?WX]*:<RWZU-+E]<
MR/&Z9KZXJL_LN&D)U;7)3;EQM2E$S;'BWXOMU_O=9FMLTO6^$A!B22ZPUD Q
MC,U^4S% A)8@TSJ1>09S+;RJ+3F..S7CJ_'/E(F"^Z/Q/XWD42-ZYT),KE/A
MMBL= ."!;9E V'9HI^.%5+#^.FZCCMQPQPN*\PX\?K=WV-O6D3Y\H3ZQK:IB
M?6!=TI>)!*-8V'B%L@&/5H"B+ $IXMR\<D1QY91/?VN@J9'20=1H;3,3S+YO
MM7O\&OUFH/T:(3B+S-N'/(SR-I =]F>!H!LZMN& FA6SB1N#MZLF^P'FL<$(
M!-Q(MO\U  -9WPY@M!K&;?>/9[,Z:'%B3KI<W\W2^["R;L8G8T3>/:Y5:9IN
MZE>4YRI%B4J!3FR_,L4DX#E* %2V KU0E*+8Q[B[/M34J-.&H->B1FPOJY_=
MU@*LFZD6!JZ!Z?(@9'20<H *\[?!"&2 M0PTJLUU6^'G9I;#'1USK&R^SKO-
M9J?DZ]VZ6#Y6_%.562JWI_/$QE(+PQ(2:IOMC!#@,D> &/X@<4PXS;RHXO:0
M4Z,,*VP9<K32T?I9KM.LSF+R3&*Z#;L;D80%<VC7=9D<5DD;5>+N\VXKB6>5
M(S!@TH\S/J%2=FX/.&["C3, 9^DR[G=VXYY]"ZY]B-?F;BF;?ER'8C>;.=?<
M "T),+:)--L\R@$U.SZ#?DP23176J1<%.8\\-28ZJV15>DYDL3%OP[98VN]J
M]:36Y>\VT>[)7+%A52V%8BEWEKK8(GHTF\4G/\)RGRLWWAID!H:FKS?W45.=
M8A;!!,1T=M3/[Z!)&1?<Z&)3EL1:L8V*?GFMJK_]>E2!+!S7>6,:B/+<QQV5
M^;SA>$Z _@\(553K3H@JETW):_7!/JCM7VTX>A4,^TKIU=K&D\QE#EE&L@Q0
M*6R/A"P!1,(<0&%^DV9(4JV:B/XO'O&J 65T^J1/P_V_C,"MOR_72JP>EV4.
M'!/;':O(TFC0MW17C_ETH]/1I^<E2X$=J19=J@E9:1?]8O7Z=199'??_X*66
M88L\#@'^8(7%>HCVP@7(^H-ZNU!9@#$Z[L/WC<*KU.7]<.;1UBUH##^#6[$H
MR@7I6:A\IG))#;>#E)K-.4ZX! S%&G"5)IG.$HB97SVR'L),S6+^N%Y]+S:E
MJ;Q:-]1@]#!6VO[4T1C.=BOZ<+"<7Q=&\75]B7D1HK?*S*59#<H:=F5+&0N$
MYZ:_SQP[N@-&FKFA+>VC&G![18XFKSI].%5FV))< 7 -Y6#H(\JXKH< H)TY
M)4(\TX^B-^OM_&Y3L-K!#UG"$4\Y$%3:E-DX!^9?!&2YL:PQ1+F,G7P1IX^=
M&FU:R=S8[1D\[3S57>FACX:-4 &/-B[KV<8 YHZCK]_\Z_#E/WO8*-_P906:
MK_'*;[O6O-E\M?^ST7'?V<)NJ \%Q>POJDWWT0^.KJQ\DHV'I?&OF'\O=K),
MK1=?;52>I8:*,.942LCS)+<E+AC F"- XAC;#7*J4Z%ISG.?-*IQQ??BB1$2
MLXPU'!5[_Y;<^[?,EDL854M/6/D7=5#:MP;/J*^'FYTUW4D?F">M*K/(_AD=
M:61;+.R/Q:I+:A?H\0]/[ZAC1RXX1TN/:85%U(!167P5'"%+$;W$- 8K;C2J
M\".72WJ)B3DOP/0B4G1MG-N8P2<FL-VP*B/G>_,Q+/;7J,U<(UO@A3.0Y#P&
M6&D;WIU!D&.59I+P%/E% 'F./S6#MY33)A;;$YN%VIB]?[WE5^VD$V0RW%:=
M 2$>>-EPW<3/HFH>[.I1JG/BL9E%=]]L69Z0C7L[(1JLF:_?Z",W^.T$S7G3
MWVZ/Z9H$/4B'\Z.S/N=2V'/(L?DO)D#E.08X2QE@G$(@<L.U#.,T3]QCTZ>E
MV]3(^TB'LK#T[Y]?1T]J785F.=:7GB#,SIG1DY%X0DO.D'FJVY,\U>.WS[N3
MQ+_OR^F;1CT9R7U>TO\"2=5CO*P=LJPG]SK<SKF>CL@C9V!/1_%+"303%;%O
M($#I6=B);1E[6T>=O?KYQ3SV09=UH/=GPQ!Q00CD(,FP!IAR#KAB&.1:YW&,
M898G3L5W>L@P-8OPV=GP2N_K7_TL P'>_"@,<]HMJ?V)565CMJ*V>OSR,=JN
M#.>)ZN)[\QJL%H6LGF/VL:NUKP>[RY3Z'O</,E$CGO*?R-_$SMH5SZI@+SBJ
M13_T$;\WEL%/]MTE>*$#?6^(KI_C^S\J*+&6+MPRX*LD@:.@JI3J.,DU0(0)
M@%.B 6.(@XQ"C3E%+,[SN5D$^*HGK5Z3P.=+/99CP ]V]^T;6_\LHW(N\*=U
MVMUM-FH;O?OV9);#RLBT3%S6*C/6IHVD.A"J^5GI!JJN,P\]!& %(=BK4]N+
M7$-,U\#$>DJFU4E<%2Y;3=0+T.@MU(:ET*NC3X$^;T'C2)TW'].YK4"Q5>^+
M[[9HY=:\986MR6V_\LW=-V,+%?\JO]BZA\%_*K9^:ZZ=ZQ3&7$@$LAQ#@'6>
M DJ$ D@:^LP4BV,H_=BSFR#3(U'SSF+O%@%=IL"-Y8:'=6"RJQ0 I0;1085J
M)9J5/4S*"(1C;6:1522RF@1M%M #R7#M KH(,7;#@!Y 76@9T.=I?JPH53%_
ML]P:F^=>V6I'BW=+J7[\'_5S3F("$Y41$!/" ,YH#$@.$6 $)]0&YV/HM >_
M.L+4=MB5D%$M952*&1DYW;CM.I#MM!4$GJ$/NWV1<:::F]I?8)&-$G]Y7'W_
M'^;>BD#,7PZ\<?V)HU#"386:K_WVA1T;H9EGRF*QL[$)GY4PEI0MQ?W!S.[K
MU3=6+.><)%@A8\B895L"3!.S#=1* :@E3!A.!19>_8%O#3BUS_Q8WN@@\"RR
M(D=_5$)[ECV\";J;Z1(2RH$IH2>*_HW6'*$)U7;MUG#C-F%S5/ZL)9OK?<%W
M4F]W9@^G+I@K^PJ@0G.5I"(#"L/8>J,$(##5@.8YYE(@F%$O%W\?8:9&4:T[
M /N-V7W L3Y-8\.9V0%L;)!9N1OXC=F-M%FXNU9S[37!O7=K0:?M)?=LP\Q8
MR.V<,]3#;^INBS*5K9TS:!X;//=G=CPS&.QD^<-J^5UMMNKV>?*GU6+Q=K6V
M3YWG"<]SF5 ;I(T UD("EF !LI0QC!CC(N5>![W3TF]J"XM;4$P9<2B-%FR]
M\8XZG.A,N!Z13$OJ":UP5:#6*\> KE<] KKV2+D&<0VR6D[T30AUK#0Q[<8]
MMIJ8\M>.Q28J9H=$AD]J6ZQ+F6U-F@\[FV3]H.W?-_.,FT5>9"G@'"4 (QX#
M@LJ^M-KL ^.8QGGJG%70,M#4UN)*.!LE\&3%\PB;;D.S?9D+B='@1_Z-E'61
MK!JO!UW^.Q1>'C'?@7 ;*0"[,WY^D<\.H+2&(;?=/UY,L(,6)P&Z+M<']ZF]
M^OD;^\=J?6_KI=[]*#;S7&<LIED"<IBG )LM%& "9D#37'&%(5,I#.1">S[V
MU,BTW?]B[=)2_JA4P-B+1H5POK"SB>GM^NH#]XMZNCR1#NG#NH;9\"ZKLY&G
MXJ&Z!HF'0^KJ(_K&K-ZT;C?7S-LRUF_.>"[,$#& 6:Z,V4BP(3]AHQ7B-(:0
MR#3MF"+04[*I4>-Q4+I+5M:F-2VK#K7T),]PT^[HQGF)R1S: 7,VC^W.F$VK
M-^;F//:(DPV$>? (VKYRO5!L;2 XKT?=AAJ@VY+P:K<IEFJS,6/S8ED.;2/J
M"UF'SG\Q8FRJ)O-PSK7B4DD""(8$8)S%@&A$@<IU(G#&%*5>P2L^@T^-V._$
M/W?%IBB_^R?ST*^VZ-33NA">55R])L"-?X>"=6"*;<2.CN2>12>21T>BA^/.
M+G@%HD>OH4=EP"Z@/">Y3L_HQF.ED_5.B/5.R28ULU";^YUY^'([3V3.1)Y*
M0(SA"K!,8T"5^2--N>(<,J(U]LL?:!_0Y[,:)T^@O1%2%TS=R"@<3@/33W48
M5DL:'8EJ.*@2-ASCN($2B&-N##8JJ[@I_IQ''._JQAR_*;;95>[$=\NGW=:F
MBI9^))HQEG.<@$1+!# 3*:""V#]HKED*98:\&I9?&VAJELV1G%$I:)4TW<5M
M=Q5;-^X(@=C K-$-+&_"N(5$(*JX.LRH)'%+V>?T</-Z_Z2<^V+[\VZMV/U*
MJGF>)YG,50IRF=AZ&$D*&$$$0)PSEF9IGF=.85+/'SRU#]_*%EGA(BN=>^+-
M"5CM7W8?" ;^DAVU]TJNN:1JIYR:DP>-EDIS2?SC#)J+O^^8.%-EV#7ARXEF
MBD."04YB"# 1%/ 894#).&<RBXW=SKS29$X>/[4/KY+.,^GE%#"W!;4[# -_
M?/7YU1"A9)=U#I6I<OKP<?-2+BIVEH5R^:IN7^G[U?+1?!#?7BM>KK)U?E4F
M4,X@3P$WZR3 "4. ,!D#A'-I+.54(^AU%'YYF*E]M59*8,6,K)RSVO#KE,%V
M!5>WC[H_6@-_W"507WR!\O[0VW$(],%?&634#[]=T><$<./JKGW>ZT([#[KL
MZ_QUM3 W;ZK8Q_VB%%,*20()0%K$ .O,UCS"'*29%EHQC"GQ;/7N,.K4:&(O
M='ET>"3V?V]"LKLFB+E-@N.9;6AHASZ/#8%JA_;O'B@%ZP#O,N;(3> ]8#CO
M ^]S<]#F%?L?UVE==:?.NVW=CG'?C?&D!]R<"JPX00D0DIO-")8:<)IJLRV1
MB1!)0A'. K2VZ";=%.FNZFBY]NYH&7;:W(COQ29C8()T[G/)MA>ZD3Z[9[1.
M&?U@'[:/1D?9IM!EHQ^LCCTX>@[2T6\DOZOUMM@4R\>R3MW'U:(0/P^U&5$F
MF,XI 9S$Q@256 ,2(P8(S5#,=:)([%=OI7V\J;'QD;B>[J4;N#KZF\*A-;0#
MZB!I71NXDG68JI:.N(1R4MT8;5ROE9OJ9VXLQ]NZL<B%SNWE>K>Q#/>X+/YE
M0[-?,?-SH3Y_56H[3WDB"(^5-0>5M02M31A3PRN<"11KG;/4I^VGMP1>3#-2
MYTY6BARM]R+[<8[_+%">:(*,99XB00"V?9,IM0'IE,J4J9@) >=+]6C+F'YY
MZ<F@U62<B?-?;$[<5H9!W_>!UXI:]J@6OL[PJ^4OVP%49:M_V?<(^#4ZJ&4+
M5Y]X+]X62Z-E8>SOCZLJH#3<0M,9YD!+C__XHRY&G>%YOCQU?U"W!<M\V;8_
MZ,?UZGLAS;@_?]_8$>I7:?E8EU(OU.&$D+ TP0)QH+D6-HJ! Z(Y!+G$/(YS
MHI7T<L;ZBS UX[AL(OQVL?K3?+3FU8CVHD<'V?W8LL.TN-'EL& /S)=V&2JQ
M;L2WN3&_6 T,%_YZ$?9!O+?=00S$AAT$&)4.NP/TG ][/*D;(=ZSI\(85)9H
M[U?+\HEVG_#>L/([L]1NYCQ.9<ZU!"G%'&"MC,&.LQ0D"K*,&.Y+4Z]HSEL#
M3HWL/JGO:KE3MAFZP=T8&W=/3V8+5?D Z^;I][MO.]NSZ'O3&KW*MZB27/ZP
MJD6E;I[G5#?GQHT#0R(^,.,=B1HULM9N!1<4.S2>=X,F6*OX&\.-W-S=3?GS
M=NR.]X4L]C?/DXQGE,9 Z,3FT!DSC*$$ 0+-!R>ERA+HQ4.7AYD:^Y0G?9$X
M3I95E9<X1%V[.949RG,H0<[C!. TH8"E# -)<9K%&&-$F(\W)@"H(VSO2Q="
MM!D66L?P@=Z #1TO<"D5^Y!C6]:]$]9&?7,#NT"E[$('"5P>9 *%W:Z& ;1?
MW:',6<DQ[S:;G9*ORQ9&E553#K0I>QL5MG-+>5F9/_U9;;>+<OKGA&J5)H@!
MINPQ44XP("@V+*)00K&,&1':O;EZ=T&FQMMVZ[;92V>]5>N]_#7S[(P]N9E5
M54I]ZH+UF:YV4AIS$H:FK1+B2HVHTF/?8[E2918=E*D"H9J"GP>%1IH5GP[>
MX\S.6.VVAYTESV[8_:%M;UW=X_DC]IGNC\)I4^@ S^NVC_@;6Q>VT(<-EBAS
M)S4E5*50@(3;=+2$0-NV00%LRW8KIC2E3B4[KPTPM36HD:^*7NJ2AGH&H9M1
MVP>8@=<%+TR\3=9KB@<R5L\>/ZJ9>DVYYP;JU>MZ%*@X2EZW^XVF.$6,D$R(
ML3NQ8.:#3C%@N3!_(*7M2;9.J.I0G.+B8#[O\(B%*:+E:@EJ$:/%0? .!2LN
M8^SVQ8?!;>!OOP+LI$#%0<[ -2I:L0A9G^+R0./7IFA5^&)=BO8[_,ABL][.
M/ZS6VZ]WWXQY(=AORM:VG4,1\SB''"B"S#HOD ",IPSD.50PUT2*S.GH]O+C
MI[;>EQ)&M8AN!' %M_:/OC\:0Y^;'@,1_5')%V"9;U>\[:LV=QY]T>9?AZ_Y
MRD-'^8+;%6J^VAM7=?3RJT=KX]L#A&*Y,_N"0]/Y^B5,%,<B82E@"<R-D<X8
MH(E6YH]$*9J++"?2R^%_:\2I?<\'2:.#J)Z^Z9LH.[JI0V(W]!GB)=@"LH W
M)J%<U3?'&]=K[:K^F0/;^<:.,<G%YFFU88N_KE>[I[("=*'K\_HZ/1RG)$<(
M81#;2ADX$P)0!36(69(SI$DLH5=$U\T1I\8LC<!1*7%T*G+'5/S;L+M135 P
M!Z::GCCZ1Z6Z8A,J"O7F>.-&G;JJ?Q9EZGQC-\JI#T8W7U9E==NU^KA>&5+;
M_K0!K=N[9=G;Z*GR]>>*RXQG0.G<'IBE$G!D"V/%L1):IXP)+R>D^]!3(Z$Z
MC*0Z=)>%[2#I:=UXP.[&/<. .3 )-4)'VU54BQTU<L_*&/OM+&)+&>V%#T=(
M_H %8B:/@4>E*'] GG-5AR=TK-_)Q-=BJ=8_CY]I&'*SF=,D9K&&-DE+9(:D
M<@4(R7(@2)+'(D%80.GG6+T^V/0<JWM9RZ]&W?QJ?-%UXZ(PB W,/:=0[<6<
M1:6@ <MXW@0C5"'/ZP.-6\KSIL)GQ3QOW]%Y/\4>']<V^\[82P^Z#HA^OX]"
M9E+H.(XS(#2C ',9 Z8I 0G/F42"R1C[;J=:!YR:(7,JKXWUJ27N$?I]$W3G
MS50P*(??2_5!L<M>R@F:<%NI]N'&WDDY*7]A(^5V7_ V@A>:RW]0/[9?_E2+
M[^JWU7+[U1"1QC!&:0IRRT88PAS06"6 4 &S)%=$\=C/;.DGT/1,&_-:QL$:
M"+I,B1M-C0?SP"36VF9P5L9(EY%LQUK-HO]4;!T]+ /&3H<!=/@>A"["3*4M
MH0=P'IT*?9[:T3FU7@FEY.:M4?9U83MHE[Z6!]UTF5&;#VK[H&W>8?5[)><Y
MUT@H::@4*@DPLL=P,:4@I1E5*D4Q\[/IN@@Q-3O/QG0_U7I4B<\;5C6VX[42
MGNZK+A/CZ,@:&.ZA75HG*!\I8,$^J#"+[)28'Y5)THT> ;U;/5 ,Y>?J(L*X
M'J\>()WYOOH\*U0%H_JO#WQ15&;N'"-I3$N!@<@0!%@S 3@5$BA-!=%8"RCE
M_*F*:]ZR]=9QFWM[9)]/\OGX@WZ=_ZC,&%X7<EGM)8Z8IY_,"?\D03EB! AN
MJQ5)6I9#S@!),!4H%[$V=GVE_YNE?$'TF]'_"V'OZ&<(B^;0KH:+=8B:?QU$
M'K*<T%5\!BL@=#[B"Y<,N@K![2)!UV_MV^#[#5LOB^7CYJ-:-YF6A;A;RM?%
M8F>KC]G(]D,U1XH(302B($/VH$1@6QS#_(UK@J0F.=.9Z-;.VTN.J5G*QTV?
M;9;J;KMWZI5ZE*<%M291HVED.+3*^NK:I=MO[MR8;809&9CMCB=CC_7'!NO9
MA1FIFFP/4\&S)Y[!NVO[2?%"O;0[076]<W:WQW5CUD_%XU=CL?^^J?P=#WS+
M+)>_6[[Y(;[:*@)O5^LZ '#Y^%XQPTU-\;]Y2BC**+/]XZ#UY\8)X#!E(-8I
M$UD*29YA'W;M(<O4&+94!:PTV&U4Q*HF4*M:'ULH4=4:E545E^K/:&'5Z9XA
MU&<:W8AVI,D9F&SW\V+TJ*M9/AQ-RYOC:=EK$Y7J[#.3?H9CVP"@!F+</I*,
MRKH!('O.O"$>V;&ZVVICVX6PA6KB_;%"E!CB!$A*#.S.&I","! KCC.>R4RE
MJ=\9V=D8TSOV*BN(&?/'^FL]B>\<046$@C!) (UM&6LM(6!()R!&0K&,:BK]
M6BSVPF^</)2 Z+DM!KTP&9CB&SA*Z0;(*[FJ>Z@B=&?/'[?JW#7USLK,7;VP
M9V^CTS8;E_)0KC3JV->>%5E"2"H2 )F4 ,<R!RS7*9 Z3DB6JAAE7JEIX42;
M&G>X=M-IRH!W[ND6<';=*.IEYFQ@;CN:I%JMZ)=:L5]GT1"3V;T!4C#<0W<_
MZB_8R[0^"@;HU;Y'X4;H4![ O/8/^C?VC]7Z?K?9FE'6=5Y:3F+",R9 #KEA
M<^MPX#+!@,J,*DD5%[%3%][64:9&S(UTGME^[4BV,V<P?(8V\)RA\:L<<$OU
M/@4$KCY[O#H"M]0[*2=P\^)K'_CQ7+PW?_M?_ZWYB?F#FZWS__IO_S]02P,$
M%     @ BH!65I70>VVP]0  *&@+ !4   !R;V-K+3(P,C(Q,C,Q7W!R92YX
M;6SDO5ES6\NQ)OI^?L6^[M=;WC4/CN/304UN1<M;"DFV^_8+HH8L"L<@H 9
M;>G\^INU !(@"8 @4(NKY(ZPM<5!J!R^RLK,RLK\]__^_6KRRS>8+\:SZ9__
MP/Y(__ +3.,LC:>7?_[#WSZ_(?8/__T__NW?_OW_(>1_O?CX[I=7LWA]!=/E
M+R_GX)>0?OE]O/SRRS\2+/[Y2Y[/KG[YQVS^S_$W3\A_=/_HY>SKC_GX\LOR
M%TZYN/_3^9^DDQ&,3R0ESHB4G), U!"FF-4B.!:\^7\O_V2M4,9F3[S)BDC.
M) E!!0*6,JJ$<%G)[D,GX^D__U3^"'X!OR!STT7WY9__\&6Y_/JG7W_]_???
M__@]S"=_G,TO?^64BE]O?OL/ZU___N#W?Q?=;S/GW*_=3V]_=3'>]8OXL>S7
M__77=Y_B%[CR9#Q=+/TTE@46XS\MNF^^FT6_[&3^*%V_[/V-\A6Y^352OD48
M)X+]\?LB_>$__NV77U;BF,\F\!'R+^6_?_OX]LZ2E^,P]Y.EG[,_QMG5K^57
M?GTY0T!\\)>%X.X#EC^^PI__L!A??9W<?N_+'/*?_S"?Q7_BPIPSOEKVOVW^
M\:\;"K[.88&@Z3A^A]]8?T99[51JX/L2I@E6?-ZL,YG%.[\T*5*>S6_^Y<0'
MF'3?'248C[I/O@B+Y=S'Y8A9ZY0%2;ABCDA!'0F*:P2;\(H'EH&GN\P7PA=(
M>:>4!<0_7LZ^_8H?_&L12/E+)YE.*@^66TGG-+IO]N!G_-U1%,GXS(!XZS*1
M!AQQW% BI''6T*P24V>1O;W:7:JWM7HQC[_,Y@GF:$1NEO/S^$##=P&\_HU?
MO_HY?A")7\:36QD7:U)#5\M9!<FMU(+D_N$7Y#K#? [IW4HK>YGK.%NB:87N
M-VMH_&(ZO?:3C_!U-E^.M)?4LTQ)EED2Z1URXE FB8O$);6!L_, NVO5HQ#
MVT? R9)L! D?8#Z>I=?3] I/X1&/PJA$ Z%91)1!!F)YSB2#S-H&)EP,5:!P
M9]FCL"#:Q\+ILAP8#"^OYT52;\:+Z"?_'_CY#0^@#5<911 HMPCH%(G7W)/L
MM%3*.@V,GG>6[5GY*$C(=B%11:*-F(C/<S]=C(OLUV8.! ?FLR':&XZB"((X
M2)Y$&:0)D441ZAP8]U<^"A6J7514D>C J'@]78Z7/]Z,)_#;]56 ^2BR($7*
MEBBIT/VA&1'M,,*R3#+\@L= ]5EHN+_B42C0[:+@+ DVH?V/<#DN0I@N?_-7
M,)+<^D =AMW:HDW+&=&;#)JXI+C7@C-*?04$W%WU*!28UE%PAB2;0,+;:9S-
MT81U@O^$\H>7L^OI<O[CY2P!RH8[FK(BV6A B5A%G/69N!S Z&2$":X", X2
M<11.;.LXJ2?G)F#SV7]_FU!\XSQ>I:_6EE!K'Q0ZQ^@D6_29:;+$18JAM-4)
MT&^2L8HEV;/\45!QK4.EAFR; ,E%2JB"Q?H_[\938".1J47O&4AB)=?"$@95
M/DD"O&1_(6L6> 6 [%CZN)05;1T=YPJU463P$<]:<BTR28H9/#^%)=XF18(6
M@AK#0$#N!1G\.&0TG,VL(]26D/$2__I^_GGV^W0$W'#'M"3)1W2I@#MTJ:0B
M/F'0%9/C(9X7K.Y9^#A4-)SAK"'0EC#1>4WOYQ_FLV_C:8011RVBLQU($"D0
M:6)";$=&K T&XVZFK8[U@'%O]>/0T7#.LYIH6X+(A]EBZ2?_>_RU\ZHU&">H
M"(06C$LTA23(C/Q8"TY1+@RS]0!R9^WCX-%P_K.26(?.BQ<>YN [NI5AS 5@
MQ#B%U#(CB'<H#Q-T=DYRF=AY>:[MU8X#0,.ISI-%-[#*2SW%Y,.7V?0F.2>D
MU]Y#(I27XP[_3IQ']&JKE P:,*9B9ZG]_HK'J;[A_.99(AQ8_9\@7L\1NHR'
MS^/E!$8!3RQA5 %L2D0F*8@30I# ?8Y2!RJL.$O]]U<\3OT-)S;/$N' ZO\\
M]Z5B[=./JS";C%(0/N6,D$T!4 +>D,!2)I9ZYW.F7.GS;L/O+'><XAO.5)XN
MO$8V_>OO\8N?7D*7BA<A,@U)$RZ8PC '0U\G0R Y.!71>GEAZFS\[56/PT##
M*<BS1=E$./ /F$S^YQ2#W4_@%WB.I;>+Q34>9)3:"%EYDJ- J81$B77HS"1E
MLK9,:6IJ9!_W+']<R53S&<@:PFT")7^?3:Y1 ?/N*G>^&%FT:1C>,J(\>CB2
M*PQLK,9S#BRWDD9J&51 Q[UECT-%\]G'<X39!!K6%3^K@HYR#*(2KA=X##I?
M*CA(MI[B6:CP&$27AT *UD5-)77GA0^'5C\.&\WG("N(M@F(O)WBIZ$XQM_@
ME5_Z-5NCA.CF@ !7B9="P1B(5T$1QH R*PS%0[+*+?FNU8^#2/.)R JB;0(B
MG?5[Z9=P.9O_&&D>/*7.$ATX^M!&:[1_"/.44_1>&<G]>>67.Q8]#A#-IQY/
M%V03./ATY2>3%]>+\106>!@FH6Q@>!@**DFI""1>.T> .0]X*GIK:]QMWEGT
M.!PTG($\5Y!-X.#U%<PO\<C[RWSV^_++R]G55S_],8K.6\TD>D,472*I2FFY
MT(8(!5))8R,SYR4F#BQ^'"X:3D_6$NS ^'@;\_SB.HWQ-RZ62UBL=/!FXB]'
MJ$IPW'J4C$/?.:+)<]98$ES.Y>J-NG3>3<7^M8]#1\/9RTIB;<)X?/J"H?8-
MM,$9[P-7)$2.T/9,$I^R)S$SJ9$!;\-Y[_L>KGD<&!K.:)XIQB9 \.$Z3,;Q
MS63FER-@R290GM 0$,'2H3N,%@]A''E0*BI=Q8_86O(X"#2<T#Q/B$T@ *%[
M58J&9_&?G[Z@V!;OKY?E(7E)UH]2BM$Y'0E#*T:D1KE8[AA)CL>< K?<UGB]
M<8B&XY[_-9_7K";F1IY]+38UYY!>_/A8*(%IA,_P??D"?_F?(Z%DEN@1$8RL
M.#+E.+&94S2(P44MK9*^SI/Q1TDY#D(-)T'[$?K 2+I CE+AJG.?HN=9*C"$
M,BCINIAQ"Z"D0O22&YJ#D.=E0N\L=QPB&DY]GBZ\1NS'YNWK&_S.8I2\HD*D
M1*+/M#R.]P3_(2?4F. =1!/AO O5/0L?AX2&,YPU!-H4)E;OY%=,&,49YRXA
MG$N&UC%%O% 8<;/"GN5>5.HX\&#IXW#1<**SCE#;<%&1C;F?O)TF^/X_X<?(
MF%S..2"6%G?)0B9>)T<0[58;13,556[-[BY['"*:3WF>(\QJ:/CW7Q\(\1U^
MX_1F4EU2YNTTS^97W:?=I?BXGE(//J-2:ZG#M)W98:JP,;J_PBU4T '(EHI(
M,I6*2",8L2EZ B**J '0032/B>7@"F<Y@*M$6E<$! Y4, PC9F,1A=EJXC0-
MQ!B#.*-*QS-;B6PM-DQ[J7J*NN,'GBC#H7W_%=GOUNWI1L[D'',VA-'RLEW)
M8HZ,(%%(;[T&Y>&\2^Y["P[37ZI7")PDRS9@\&8\OWJ;1BRSR)V+Y:U8R8)$
M0Y#@0(*127KCN#%GAH#;RPW35JI7")P@QW9/])>SZ6(V&:>2ZNA>D'4)D%E^
M_Q56?0X6IYSQ1WQJM8:23Z/_3#_@>D$NO?\Z*AFB*[A=<.,TIL"S<("1H$!7
M,:"O%QAH8EG2%F)6H \E][-?A X!ZW56.PPFR\7-=S9;[1%23C48-Q_[$;[!
M]!H6HT"=-Z4[%L\&_6!/RV4;?JEXYMYS9KP]5&]["DLW:P_C0M34\8WY.$NJ
M QX?-W2_G"V6[_.:^I%*&!-%=(&$29Q(M'U(O&)$Y:2]R%PI:BI#X@X!P_@5
M?>+B=/DV (Z_S&>+Q8?Y+(^7(^DE<YE9/%&YP:A9=P=B1K?(66&B#=H>>M!]
M"C2VEA_&V^@3&*?*]G18S)9^4@46GV R*<4],,6C>'(Q31?I:CSM.FV5$M'7
MW[_"= &CI+/U*0G"DH+R #D3%X0G ;2(-AF5#M91G8*8XR@;IOUEGV#J02,M
MF)_9+/T^GA1^WJ*"IN@F3N!BL8#EVZNO'IWU4H0<P 7T]@5!1BB&:UJ4<"V1
MJ *+0OL(ZE ?@9/LTA%T#=-,LU>#55L;)R/L&\S#K!+&UN'$]'(ELG=HE$<F
M*,I5HH0FC6$D"^C"<8P'<V(1J-<ZN4.-]4Z!U XRAFG$V2>"SI5U T=?]Q("
M%LL5!VN[^ALL1Q:RD]0'(EC7;8,"\:4)G%$1I<(S$W"H6N.T^' W+</T[NP3
M.%6D_G3TN!5ZIG!9DA"?JYUK[Y=?8+[B9<2T\J! (=T^HFR"(]:$3+*5L>0>
ME0ZUW>JMY8=IW]FKC3E1MNV@8V,<WZ#$7LZF:#&OT6AN$E\O(,_FL/J]S_X[
M+%Y_1\&AML93/__Q%J6Y^&V&/YTND<))9V]7^V?$=;1*)4"/KQ2Z9)J(HYH2
M(Q*>TH+[) ^U:SL]B]4+.\-T%.W7T+6A^R9.VC6+:W/_ F.;$BMS9B-UG)+D
M2XO_PD90&"LS9BCN=JU</'3+<3J$'Y R4,_2_O%WGM";<.L?WTBC+#5-##=
MS+Y<\VA'G#*9 (8H/(<L5.PGHW^(JH&ZG0YKTYZDB@9,$WJ>&Z8NELOY.%PO
M/4;#GV>WK^A7Q4*W I3!\""U)#FH4G,4T%%-JHR@B&A] 1Q+M4/*IU,Y4%/5
M/L'7LZH:2)*]&B_B:D]!NMU2=_?<SE^YYTB,>.+:E&;$H$$@V^!)*!5M&(AC
MD,6\H+)V(%*)]&$O$_M&V&QX=3=QHN_DJG@J.4-<OL\[?SZR,3DCLR8:+".2
M"DEL!D:81"*MS9FRVA>:)Q$Z[,5G"QBNJLHF$'O$KER@Y-]G9/V@T$=49!TI
M%T1UO7A4C"1P#OBE<SQGYE/UN]=JQ ][<_O,R!Y&Y:VYQ*.4O3+6)A*I*!-S
M=$F\"3QFDG<^:@["''KV>K:W.^P%[S-C[G31-X";UWX^17$L/L"\>]9[*Q$G
M8I(^6 ).HM.?I2->T4AX<?>9$#:8V@'3/EH&FB;09UA41>P-!#^/YQ:0PQ=^
M,8X=FR, SJ0'66H?$NZ.Q(F+CI,8%+.&EN8"M8L%GDCBL,%,'5P\.0%TNI*:
MP^#A,_\NHRPE+BS/)/$B5.$9L<XK4N8"&9V$Y[QV<'(RL<,&*,^ R[X4UT0H
M<E]^'2\CQX,7W$9T*KE"'].8DM5WA()TY2&%9NG0JZ$:9VQ'R+ A0B_8.E_@
M#3AG_X#QY9<EI N$HK]<SYMXGQ_T7UDQQZ+GNO25-@+*Y)FL2/"*D1#!.*K0
M+Z6'GB">@J8G$3AL4- +ROI34 /GZGV)O1I/K@NO-X(SU.HD+2MCO$NK%BN)
M#=(2#I+3$BMCV-2S];I'TD!SI9XS4#A'"0U@ZBA7=,WCZJA'<ZVRTNA]@K>E
M+6$B/@A#6&86?- FLWY3;T<0V5;,<!9$3@D=3M97<X!\U >]PZIEU+N,1T7.
MLB3$LR<N^4RT]"5>$B+K0Q,1GB%\>#)(GRV Z ^D_>FPR4ABS<V(>A71@[&$
MRG+2@ [$EX%$CN..\U1Z";6]OSVDM!5-U 1:#=FW&U9L[XL[W1US\C%Y)P@@
M?V4D;D#_17N2+8L8A">-'LSS!!;[2&PKM*@)N3YU]?/U3BAMBN?P!::+\;=U
M+<5=9LYKHK#KXWONIO H1Y7:*G1E^3L6*Z?FUMDXGB7\_AS\ E[!ZK^;.[*8
M@T^>8F0LT+.S2A.?A23<:4YMDEJF0QT.3WXI<1;5=>]5&<3 E69$:[3QZ"(
M!N\)-[:*T5FA7#*UKR^>?J_:6Z#QS!@Z?,_Z%%4TX;@=);UR.8W*O'-G_:%3
MSB9?)67FQGNB@BQ],0T&6$D$8F/T&;K+ZMJ7%I5('S8"&1B]0ZB_@?CZ$-MO
M9G/T;J:K:5;QQ^>YGR[*D"N4P#1U7TU6Z$C_>;U8E@/S1E"CI)QFP1N2%2\C
MMWTJSYPC867 2;#)Q(/]UFIO@M,Y^0DL>FU0/F%C/!-"&M\G'\HW.I:[W_HP
M0ZG#<CSO?,CU"Z$/$Q3&#C$X88&IP-;Y#5U&%+L,1&6O&64"C*S=8ZHG5GZ"
MTV/ G?)<&#GWF>ZSN5*C!)9ZZ0P)MO0%3HZ1$&09B\9U8=2(/(2?-&QVK'48
MGZ2]!E)J.]C9L"*IT)DGDF0"(C,D$@P5)*;2%%/':%SM-DP'R/D)\->?$UY+
M3=40UVOF[(5'@Q_ATQ> Y=G-1N]^6 ]9L0/45LJ!W>;=WN<WXRDN-O83/"C'
M=UK8"I4,I\F4!DH*+5L2)&0?2IJAC,\,U!T<(G92T[0CZ#K70'5]HA:;322S
MS$Y&@CL&S2L$2BP+H= 6DK&:N^HVZ2X%P\8]U9%PW]"<(>X&@I$5]>LIT[=,
M6"."1:'@(9_P(':QM&=WI>&/4%%)(4*J?<.XDY!AH7..9G>"Y!PQ-X"5EW[Q
M!:..\I_7_^=Z_,U/RL7&Q?*EG\]_C*>7?_>3:Q@)": X>HF44SQ<*3J-+EE.
M*/-&>1<R];7[WAQ%6 M8.@L ]QV<ZMIH &(7,<ZND8V/$ %9PG@$G;:UU$96
M1G#.EQM.@9&(C1G=-N-(UE'**!VH+&M;I0/T#)NEJ ^H:K)O $=OI]^0ZMG\
M1^E<%RG-"K@B%I@HHX<4\=(:DD0$I4S"8+/^2Z3-^L.&8?5Q<K)L&\!%%Y3>
M$<D(: J\]%N"6":E>U/F(-- G,I: D\8;-9^0/N0BF&K6NICY$PY-X"4N\1[
MD[WV21,;(!;?+Q!$MB/>4..8+0Y@[9:C3\=';RV.>SAK3I9N QG #_/95Y@O
M?Y0D^Q)=L.)^?5VGV4>"">MRT"31,O&.2H92*8W<DI$"#T^I4FWW]Q ]+3@I
M52*H:D)OP+;<-F=^5]*='TO9W_O\M\6JP_<H&BX=5YE HK:T"TK$E=M-[C5X
M8:U6JOJ%]R&"6O!?JD"HGM@;P-!-B_B19IQI)@51)O.2)"^SE!,GW*(-I4*C
M'U;;X-RLW8+74@49)PFS 1#<&PY0[E5>?X^3ZU(??,N3=3$[@YX62D,3&3%^
M\V7T(H+=.>I8X-7[(1Y#5PLN317P5%=" \#:\M]+B^.UGR9+D3F-E'#TV%>S
M<[R+&.SYC'M#JLQM[03,3D*&'==0\T0Z6\Q-U+NN.!@QD3P88XBA:#>E!D.<
M*XDB:370J&@(M?,LJY6'G<)0_9K@28)L(!YZ-_9A/!DOQ[! Q_S3<A;_^64V
M0:$OBI.^U7HK!\:H2(Q8F\N+%9F)QT"14,.%T8E)QVJ[*L?2-FR<U/LE92\J
M:N"<VN+K?GHB.I%20$XR"X9(/&:)3P'*RRP*VK@$U:W1?FJ&O7SJ1_O[(7:.
M*AH U<U%R ?_H]R"W&2IM);4QRQ)3C01&:3"G8C\9*$9&FO)9:SM1^^FI!DP
MG:7G/;=/9PB]#>C,KW'5!S(::9.,CMX3SDIGD R6.(,FG .&G-Q0@WNO/GIV
M$S/L8=<?@"J(O@$,E=8;11K_&"^_O+Q>+&=7,+_AZL<-3S0;F8/))):J2*DM
MAI)!HLRB\B$'+YFO7:%S#%W#Y@I[0E9UA30 LAW;1'"1(V.19%"L=,<2I3^&
M)L8[&Q5D&Z!'[[R)B]"> '2FL%L(\6;3R\\POWH%8;F5J? 4T&/4CF1I OJ+
M7I9&&!B26)&R9@(CX=H5M+LI:>9$Z]&_/E\%#=B=5^ME;Z=C;,FNW.1ED-%'
M:PD5"K<9=:7.R)49M]$GX"PD77TTRF&2FCG2^H-63:4TD9"\>]-W>U9O;1O
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
M3&EL@FPXI8Q2DE%I:\]AWD/*P-.&SL=/35$W@9B"^O6=Q?2RX^KV,<%??:F
M>?"(RGL6(\32U5%BE&PCQLN: XE""8M!K6'54_LGD#GLM515I/6KHG8=F4]P
M60IJWT[S;'YU9NNBO9]5R<$YCM9:#8M6BWV$KV7>[_1R:]6/\ VFUQL/&Q0U
MT:!?G9(M2"A#.2RCQ&>KA2VW0O7?=!]-W?FC6K;OK][G[G'=I_'E=)S'T1<2
MUC]'(DJGQA(*K*E;?)Z]G$T7L\DXE=*^+0-NP$4+F63G#9$:HP$K8R!1)P^"
M9Q=L[7"O!S8&;FC4#SX?#HT95OT-G-^OQ@M_>3F'R[4(UN*]7T"#*U,0CG 0
M>.A 1"%3[\I5+H-LA0ZJ=GWQ480-W##H>5!:7T4-X&Z[5KICI]M<K_%XFT_]
MY.7U8CF[PL5*B#5#GZ6,K%\%72]^_ 5FEW/_]0MNT<G%'+V9^R^@!0_&)"!6
M"90U^-+<ECNB4M96\D ]K=U-KC]N!F[.\SP(;P0,#3NRJZOF6=XZG"YB+/WT
M42L?\!2*8UC<_M;- [-R?B%"TN_CY9?Q% ^WVPMJ5..KV758YNO)^G,6KV#I
MQY/3?.-G)*^6NSV41.NU:;Y'Z^U.]!0]#>T]T5&7J^=$$?*E:4]4440(1JK:
M'OM^:LX])V[E^^:A?%$9,/Y6]OO'V62""BB]"T8)G&5EY#,84QI@2$^"T9&X
M&*+3$)'[ZHVHGTKDX V5:V#GOA7O5U5-^2PW;/TV6\+BW6S5_/_->(K<=R\1
M;YA=C5[3> )RE1AQ($O*)D5B0XZ$9Y83%Z%T@^[O O II [K3_>$R^=0VX#H
M7,R7HY>K%N7H&*WJ=%=]0I'A-.LZ"'7C566.5AB9B!5>$TE+P:-TGB2?@0<A
M;99'C4["!;<@B%]MX'<L+0-G%YX#$+,>M=,XVM;S51.W*C++2.0!.0HY$*=U
M((%YZV.9KNJ/>NAW)MZ&''C<C_:? *T35-$XN"[2?V(\6*+2]63=""XQI01A
MH=Q7Z%1JBW"3*IIHJ<"DUA[U..]<LW:/KG8!=PHFGF+-SE%0 U[>G3.A2SG@
ML; Y"M[=3FWB*5!O:2 \I$2D9)DX*_%+Z80")5. VHVBCZ5MX+SH,YZOO6JM
M!30>%52]O)X7Q8Q< FH9, +== 6F4)8<-S9N]*0,+]U+:U<M/8G )N+>RA@Y
M*0H^16$GH_%K9Z$_+?U\6063'^:S;^,%*FT'BZ.H*89DU)&LR[ !AS%;"!D(
M.C&)TL09E;5G5ARBIXF(ME_$55-' ^9NQ]FPO:%>(D7C99FW!8M_S,=+/&+R
M8I0C%QYB(LX!;J*2W@^,HQB5QEV4 A.J-N1.H7/8JYQG@6+OZGLZ1-T*HM-R
M?;K^W><]D\&%F,K@E> E$)D])SYI2PQDRVA0-KO:C>/JG\F]O5QO\$Q^BL+.
M/)-?3]/PUX:_^?F\B^=ZOP%\L-*S7N8=YO,9[N6,P @8#*&B(-A81SS+FE P
M&GT]ZBC4;GS5W[W<)X^;LU22!A__^7F.FQ8_]*9HL12C0*",81#',)*SW.!F
MY9QHXT%0 2I5'^AWD* FXHYS,?'@7J.:"AIP_&Z;'*^F=V[:YG3I46^",UP9
MPH*@Z")8AB:9*\(@<E!&<8#J_; /$33P_44]Q=^'5#4M- "I>SRLTY[",ZT
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
M2+SA%NLP4CJ*R]("2\Z):%,.X4@FT+ \YC3%-X<\6DU%T0.TGHJZ<94<]XC
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
M : ^Y^W^HK]GTKUX6JN]TEF=G;6Y*/BH2^,7ZWREC84NFLNL@#DIR8:S@;Q
M25:_CX:1EA>86ZNP001V";A]@'&W"&$T*?4 P2N&73T%G_/)ME]D>U,E-\(R
M5Z#H:.DPY%YZH^@??2Q6,,Q>-J]\>8J@:?VWH[Z;[033 \HN:+^\C$8F8[F1
M()7.=2]IW<T5(OB$0A/+9 X[Y3H'*;);!$Q<_]).L/<4U;Y<GMJO^T2Z]<_M
M+.XKST,+Q8Q5$+==V"5'"*@%D'+UUAD9?+PS"/D1=^[N3YY8]OM+:-F*75/+
M^LW))L>O5X1[[;VVC-YE1:9@J"N*D_6D)C72J^F5];O)^?9/G3AUW4;&>[-I
M:OE^RNMY(@;,\?0Z^)CH':RS/;FI^SWK@J 2->FT@MI)M%SO%MV]]Z,G]J-;
MW>9#&-;!Z_Z -?3A>KE=X"86P6KX2!%;R+L#Y.3V.16T9-D;KEH_]D_1,VV
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
M?STMJ$/0<W +ZA!1=? 6OZ\5$?EZ@?R'R^5DVS">T\+K3,X7?3C7L#X'],&
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
M?:N10PC2@W8%F8Q8?QT=3SWTCK>0\[/0V8/I4SM^;Q3C_Z[T7Y;B:Y-K1Z&
ME"M# IFA045=N9)+B*H(W*VBZLX/[DWZ^XAJV8AO'2B,2^OSTG*\K6(OS\.L
M3T'2<QVQ+C(UW)%.K6.#94Y%.Q:4:+UL_#F:I@T9-870*&+H %9W7NN?;,/_
M)Y,+]+46%Z[P>OX/0Y$RDQE*J>UAJ2A JPT=DJ/,UI:<1MCB.8C&:<-3H\!N
M5#%UD?"];S;>6(VW\I6>+I21'(K6 I32Y)T880&-R,@USV*$AJT=")M6TQW/
M^&XOI0YT8+U.^>S;Z?+';8_XHN'Q,H S*]9PXR+=UFP9*$=7*=0E\"$E)PWC
M2J;6484=R)JZJ:LY&.Z^MHTE,[7M_O/;<%7"O[VF,XRQ-EL7\-H2G[S(X$-)
M8.EY0,V]<W:W-1I/?&3J5JRQ\-*4N2\\5O_V:YW6N)XOZ*^\B?'\[/QT6[#_
MT%_^&$[G)UO"Q@[;'T;5,2/X#?EWK&!^YB&)H@)DQK:3LFNKMD HUF+-8=8G
MO9=@_@,6RINGY/&P#1.DS19-HB.2YE>2U 5BO=E*EJ+1(38?\-^$\,Z#_T.
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
MTM5)2,4Y\%PIR#++&%DJL?U:C=9,]#@1JV\S&A4FYW!1[2^ %P\0RUB=>Q/
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
M)!W_CI.(L^!,N!2S+*W?7UXDJ,LRI!/B93&6\OI#XK7[Z2/3R,CW4)F8(-+
M)9F!%>.*+5:[YCU"3Q+2>?_KQ,@[0%D=(.YW7&[J;><)MV/#KG.Q)2,JI2$)
M7<CI*0ZBHJ"9V\#(]?4IAM;S$9\AI<LNE>E0UT)A4R?/_[7[SML3>\>$<L44
M73C(*"(H834$1NQ8'ZUA695]=V ^]PU=-G2<'DSMM-#!$79P+\NO-S/42W1!
M;X:F:U5E&!.$4#*)-!;EHV3,=S,'^==!:RW'VQ#117Q]8MV?,]JO:R+):;G:
M:.7]^C,N/WX.\UU/UV^+73W W1ES7'*KI:.P$CU)AWDZ70H&8%Q)KIQ3.G73
MS7<0AYV'4XWQV\I\Q@?3W\/4=K,3119,LUKTBD@W+K<&8NWCH1O=669X#NGD
MTUE:,7>F!G8"A)_>& ^ V_E,,SM8/)OFT=N1OU$&%GC6('4=D:TBR2D$!(XQ
M<"F-0)W.QACO\]9Y!N?O8(M'@&W2;7VW]56CB.5=_M]7J_7FGVYDXTO@1B4+
MHMAZ3&&!4(H PY2RK-01W&FO;,!)R>X\7S6]C76.I#?M>/Z/C09OY%(?1P(K
MADX?(T!I&2AVJ'UQ4E'PD$IDL9OI8P-YZSS3-[T9=@VV\UZE\*ID=L,3[P@G
M1A6D]@5*]<95J1KTSH&.C@L;,SK;S=+-X>SUN,SV;V:,QT'NC=OCPP Y^:P=
M4Q:"UB0:3?ZY8]R"-E9AD%*(,PH!#\G'G'@)[M_,%H^!6T]3.<<5SJLCONXJ
M6FGF"^<*HE.R]HYQB#[XJG=3LB?? \_G_CQ(!&>:VSF;AXS1X/BF \[]Q7<A
MF9#(8ZS]=B2S3&>U]\9"DE9[+A+Y)-VL1FK(]YM_'QG/<#H\! :A^&_WMO*Z
M^)0RRK :E*3JM<E(3A$%*< R*S*1MV98/IM#8"#S9WJ#_ZU.@C'Q/'59YDES
M\J^+KHA82E8%4M*<HB**CYQWOO;DH\H%.1/[C3OKBZ\W_SXTNI5WJ-1!8'W3
M#O_]I/_K@G.1T:G($@AT%/5E[>H&!0M1:)\#ZA!Y-XL<6S/_YM^HWL"%/R:>
MW_1!<&=!V!YN4G3>^_HB+W4&I4HB-ZE("#E%\I=4L-*?S2DPA/,W_S+V!HZ
MT9#\INU_0,[$<L,4UOTU)2E0(AB@$U0!JN0X2]YH??*9 +UD_L[Y)>X-V/Y(
M*)[X%>^%87EWA!:?V9*V9Y)D(^SW\X]A^0E)<#?3'E?D2M7![!=!%5Z\=9 8
M"E!<<G#1%##:>Z$E'9?AF"F(I^/D3$/ZXY[>NI#\( QUD5\[1%B;7^XT?N\*
M>"RW-B3.0/A$O&>5Z] !#700%:>XXQD'U$>W(^Q,P]HIS:&!AKM ]ZD2<G=$
M]>-BGF>[NWK]CL"!WS!?%!Z0^Q)!!4^2B\Y"P!Q DPZYT\S(/.!NZ86M,XT6
M6UE6+VH8A*ZS6W+Y[M.GY:9J\_YFST79">QZHW0.\WSSLS=N\*(\L['QSE]7
M1:W6G\-ZFUQKOP1S,A;&79+9AV9.LT139Q$%<O+D5*0@4&N$:"W]DKD3S@0?
M5>L!1"]3-/82S:WLWUVM/R^6L_^+^;\DX^5&3UOMUK$OJQ^^WU\_7T^_[10-
M+GA6@4[6E(4%92('S[2KHS1*8KE$G9LO'1V5HR[KH@Y!Y]!UFR<$0@<)R/NC
M+(5U6F:M('I7>X100Q":@T&O2XC1,M=Z$,+PF;63;>$\)3)>'&0[1$T=8.Q5
MY_&0N5N9&:X2ER 21U!>"W!:,/#.2D;G0$3USR#;88-L!\'J%(-LA^BX YR_
M/ M5>\&YRQJB8;%V73*2;A!@76(NIIQD:'VV_MT&V0["RZ!!MD.4UQ\2KZ?Q
M"FY4<!$$"O*::EE$8-8 20V-3[Q$^<\@V\F1=X"RILX]WAV*^G":I4L%+=]<
M*JR^)MH"+M6"' PY)[0V*',?=,]D E_XDLX?@$X%J*:ZF!I3SXY'C98SYAR"
M,8[345R[-7,*D+46T87$5+1[ >IO-*3V8#0UT4('%V*#W+D23CK-$FBKKQ=S
MLE1 D-4D$[.VV#S#<S35?:^,GC"@/C$@SMD$'F2W;YYI-LL<[Z?"+Z)@)F.2
M=8I%(9DPK/TVI<[%%D4P.F]<-TVD _CJ/%9JC-56IC(6<,[9F 86O&]$=:>Z
MU2>KC D@ _VBDD!P6 R$XKBRA<Z[_99'=E&I^1*GG8>(G1K<Z<!U=J_J/X;5
MY]_#+*\7?^!Z?8F_SD*<7=)/;@2W:O\&ON<7COMB?0C7IWE?9C)A2;K&#U;4
M!9$"HK$6,,2"S*64TXG2]R=Z7]Y_(8,)44C#JRPH5%>%[D./18,BDPP8G/38
MW(=J17R7CM(AF!OZ:CR.>B?>9OMQMJX<_S+/LV^S?!4N-\]$KB24-2F91*E%
M9+53P#('R<I0LHA2Z[U*0U[9:OODE_?]0#P2"!8M-=(;I/[G;/WY UYNY+?Z
M//OZ<?'3?$TWU"YS%:/UON:9<I84XRM/,7[Q'KRRGCOZIY3V&@4X%&PODS7=
M=NT& '@)3@VU,?DF[GG8FN)U\MN%&$K0=:,6T2Y,)H\\2&"21YV*IO]KLH7]
MP?=V!)66RETTDG0'L?R#;;Y%:FLXA3TF4Q3DF(?HHP5ILT&54Y&J]02DX250
MDV5LQ[WACM=(!W :Y0''>,FV&TT#>:U*D&W&NFK0!D1I? [9G7Q#WIE7.PV"
MU4G6=@_0<0<X?[E@QDGEM6*"Q%D<J%@X.*W((_%9!^]RL-PT!NS?K=II$%X&
M53L-45X'2/R#%+F1XC8+5D6\F%>A[GQCH3A7$62NVPZ,E1 DN23*IV!]XL))
MUOKH?(F@B8M5NKC@VVFL _@]X.&ZY *5%AXY&*5(//1'"%8F0(4)+4N1I=(8
M=D\2,O'!UT[1B]92G[K"Z39NVIS!OU\MTV<RM7K*7U>=QB@-:E>WM4A0U@@*
MQB2)RR O,=OD['Y=M*]^U;0H::#+Q6B"G73M6\L725U*(G\!F ^)W 55P 4C
MP<G LG'&ZW.M7QJO%J^/R_*TNN_@1CV8X]\6NY?N1R_AFWDFF"]DR5'DS"%+
M29YS\@4B3Q8LM]&2]ZQ3Z6;>Y:O<=![4-,9E*[-H"Y*W:2[OK]:K=9CGV?S3
M;DF.-DQK'B*8P.C>Y)I.,"UKU:_5/*9BO>EF1.0 OLZ_T*@O$SH...=L3*\6
M7]W^9]=E.#-<U>J<"Y5#2$DH2%K4>292@"N:@<[%9\9$U/E\!C ^RV;G73J=
MFMJ)8-5Q,'Q78#_]57^+%R%)E%I% K:J*TR9!)]% I,D$SE&;84X-C)^XGL[
M;PT:!\)CZZ??6M*;VMC_8%A=+;>!WF^!!+Z>?<,C:D;W^^!&M:$'<-&H!O3F
MF_\U6Z7+1?WRU4TUGA)T&.4B@.5:C>>1((+&@R!O@4XF7YAMG2!]B9YV]9\_
M_;4F[^=JMOI<)?V^_ OC>IL%8#9RS:R$DAG%_L76X?19@,BNY,#02M/\*>)U
MLJ:-(IMAY/F*S38*Z< W_9&^<K;^.:1M#7=-H1M69W;X ,;+31\F@\"$A&@S
M<UYJKWUK*WI,12]5F8T4O6@J]>YPLTNO)TVR"*:NQDJ;T;V)O$/B@0GNE4DI
M1M<ZH'^*CFFQ<ZQN7X3* 8+N "P?\-OB\AO9T7UFKON^=2BV) HB%!J2#AE2
MX!F!.<5Y-LBX;EV(]")!/<'G$'T_JLMH)?P.D%2/W]O =6-<0;'$2O* PA$'
MAJ)1+^OD5I>3Y875T* Q?!Y3T4N)Y3C7U9%2[PXW=RJ>F)$Q,(F@#190Y!U"
M4/0[(@*9L+[(T/KQYCE:ICUWCM7QBY Y4.!39Y#^P/ELL=R>F^\^+?%N13IC
MA;-0MP(+$>JC:P:O:CT!>E0V)V78 R_YN7'DSW])3X@X5(6+$>39P8'RU$%[
MFQ-+D0Q%N3H-1U9FHH/H.8*PQD9$J[UH'96_2% O!8+C7$_M=-$!L'Y=S#]]
MQ.67RL0%N6-*D/,'S)"+1H&#@*AS(>>/<\:$2B;+QCBZ^_T3EW"U4^NBD8S[
MS2O75-=B3@*[POS^*RZW'5G7EK<H].]?%ZMP^>_EXNKK$6GF@[ZG4=;Y>!X;
M):&?)N3=/-^CX#;G2'$^)H(EE& )JU%Y\%I;,&B2UI&I(%M/OA](XK&GUB]S
MTA+>E.;^$"XWTP(_(Z[I.]_E[<:-<'DG(_O#]_NDT$=<7M5'_J=)WUX36G$K
M+%/ >,D4"/,$M7D R!V),J&0V;>^6$_$VL2^WHB(?GCZ]HB5#B[^>QS^>!E6
MJUF9I2T":C06;;#%"U4WU)"'A-Q"R,A :Z]RR<ISUKK]Z162IH5LES!Z& 4W
MU&G?$-V%AER31%12D&.-XBBH T=N&O!BLDJ"7'G>NM7Y5:(F/UG;06!_>!V@
MC]X ]O_@92Z+)?T1?UNLGS;17?*@\,04E@ :8ZV #P6\\ Z2](+"2!)D&15V
M^Y/:+1@/ <Q+<!Q)>QV =/R+9W,P%*=1*\%K:X>%.N$/G(D1= R>.;J51#@_
M5W?ZMY)S<!LZ1%@'=C>(P3OI:F0V&,XH5C'UAM7%0RB80.08+#I5![6->3GL
M3^I;=ZB'H^ZE&V8D"$S]Z/0[_8IT,<\__7!%O])OKY_JI7<R!0Y>1KJ:M4"(
MQAA"7V1:T*7-RWX%RL]]0T>^R5BZ7;06= ?GXOAV>YMUY[KN??!(LJB3M&O"
M/5IRU:QA/CFC,\^MG\M/R-ZTSV3_>":'8ZT#,WRW6N%Z]?[^*\3+S-ZD4W/D
MW"7+P27)2"6%HBXN<AV1XT.2EIOF:>TCR'WK;LJ!$'PX<>Y$>.@ ^D-83&EQ
M59M%%FNL[PN_+L)\]0$3SK[5P^DW7%\@>J&YE\"BB+6[,]+Y5(6N%28ZJ:R3
MH_KKQS(P\42Z4\'N)=?\I!@X+P/X9?Z-M+A8?O_Q:EGU>2&3][K6NZ@87!VT
M*Z%."@!ADRB*62R\=;O%$>1.F[PY W ?I=_S@O+O2_P:9IDL>-- O%7.-=N\
M,+HT0P)K"UFP0P-1V0(6F0\^>HS-&],:D3YM%' &$&^F]W.#^X)^N_Y>&Y2K
MJUG;Z+]N2F,7\[3CWO!$)ATX2,ZK!IR#*(6&Z'11UDL;_ B5/@TYF+8=_2S
MWQ8%4Z<;!["^^\W\TZ\85OAA]NGS^GWY[PHW6KO0D@>O'''I:X^2)OG'NA"4
MH2\A99O2PV%PSRU1;4317E#6;P7*TRGSO$[Q7P@#\T\SBC.V&KICMJDP[83-
MH%"ZV@M7]V/S!$DY,N&0D\$) \_G"=\+Z.:M 'TZG9_145W''VQ%?7FY^+,F
MR"Z"#E)EER&DPHE=%\ I'L!G;D@/*J#EK<_GQV3LA57[5K!Z8K4-!ZC? G2.
MG\)Z][,3Y,$O=!*6.9M NU! Y6S!";DI Q)&8 FV^>J^ \C<"[ONK6#W5/H\
M_%2MNT;;]%S=3CD[3+[!F:2LL\"D3J#(/8+(0J;(UVLO?4Z"M^Y!/Y;FMUZ%
MU>81YZ3(."]'^CJ+_WOX7K/VU_F?C+5L&8GA4HN:M=5TRM@ T@BKE#',Y-8S
MP8\F>MH7F]-B[/AGFR,4?G8(7U[=FX%YS7-A7@LO)4A;[S>?2=@8:Q!!DN#)
MJ,A;]^6VH'O:,_^,<-Y [6<4+-Y/!=TL]+X;)4M!<0@9==(R@BJ($)1F8&+V
M263FLMAOV$5+JJ9]IYD$S=-JMH/3^U"I7T@6D8>H(47NB,^:C3?>@Q(L^&)8
M3*+Y)(4#:9WV"6;24_HDZFT6<)YHB,-ON/XC7.(JS/.M/2]6J[)8[IJLZC_?
M_GSSZ0Z'$C#JV(<F4IEH'H1%GJVOH_9R1:M4$D)1"H)SS,F<(AOCH>$MSH,H
MF*W(D@'=8J8N]#+@HXD@M(HE:N<LMF[\_&<>Q)&(GFH>Q!"L=.#JG*@=*WH9
MA1*"[N>J.<L]Q31! \/"&:+)6L2SLZ"_SW2*0:">ILUT",(ZL+M!#-[I0_.,
M9\:C!&TE0BU3IB-09G"1U\1 IF.P^1S:?]I,VZ"N49OI$ A,G1]ZMOL12PR6
M,01K4P'%B@9?D@,=+%?"<.'<?G4";ZO-=)!N]VHS'2+HWL[%)P;9*%X4QL3!
MTY>3"ZC)X$3*8(I1VA@I@QGUX>? ^51G_,1YO ?04J=]0W1GQ;'6>J&QD- I
MLCE/(4I0@5CS,@66S*.IS7_W^52#(#!X/M40??0&L $3CHR+17I,P.N:9F5=
M@F ]72,\"9<4<AY;+T8YD-1NP7@(8!K-IQJBO0Y >LK:&N-#8'5F'?=UFY8S
M&J(-&7SV2DKO0_2M+_U_YD%TY$#TBK4.S'# \]4'_(;T%Q?!:<M3<) %6HHQ
M1(#H'1TT,7-5HN&I^4+LX52^]>S!@8 [O-[D$.V?%[YO'NBVVJO/=!?,^%3+
M9B#$6-]I>0%/MS<D3WZE,YF5YKOBCJ/XK4>3)\?]L:@XMV4,+;;\[OG)X[Z\
MGV+/[] '2%6LR452A*IJ-)"SA%";;S,/3%BNLY'AGR?U?=Q!PZ(UF"*PJ.5N
M/F-=/6C1*,ZMI-OH_%SZ,WQ2'X+HJ9[4AV"E-Y?EB5Q7$9&E:"D2RCR""NC!
M"4^^&(])%*M3ULV7 ?ZS8F$@C :FL(?HM&^(7L\[#5YR&2($4^LK=4[@)")X
M<A-4E$5&,^J(D?-+80^"P. 4]A!]] &P)^QPRR;]3?GA>ZV;W&4^??*"(M(,
M4D227#8(KD0./&J!T01;Y @[9_:FKUO8'0*-Q\ ;1T]]8/"@1#Q*EY+S$9+.
MB@+3;"#(XJ!@"8P7G]VXVV4:/Z.,EBP8'9FC:Z\#D)ZH3BG'G&VIK?FV+EP)
M,8"W=$/EQ'W0,>FD6N?!.JJ_/.-\V?&N:X<(Z\#N#BW0DNA59LX!UW50"@L)
M?"@4-),JT%#D'.RH^_'^J;\\''6-ZB^'0&#J^LM?YOEJM5[.PN5U6> ?^.G.
M/G2;F)6%$?%8V^IYB> +#V"]D(%AR=X]J,M_I@SSE2_JR(<>2].+D<0^-83>
MD8S7E?:/BZOENZ]?+W<^WH,Z4V.XMR01$$FX.O_$4?C+&1AK&#*;,X4*>R%I
MO^_KR/4]!:!&4,+4N'JV8CFSY+)D"8*SY.P($I+#Q &#<JB9+R:JO9!T5&GX
M: 4W)\=.$T%WX+*=\G%:1F:\,1Z$-QE4";X*NT#@Z&/RT@6=SBY>^O7O57'6
M=]!T&-:F/K0'%%X\,64R.E&$,@ILTAZ4T0K(1;?@N=&,''BFO=GK9#^*C+<>
M&!V(K';#1(>HN8-[90"S/Y)X9_EF'$C)/"J.$$0=SR1DG>HK+$3!C9!::=U\
M'N.AM+[U--EQF#\I$CI ?)W,%%:?WR]_IZAB]X=_S;[A:CU;D_#??:D3^-Z7
M>SQN-R=AYA?"^<)R3:X+3K]$NF&=M@ZLBHQ,FVG&6S\-'T7P6_=VVF#_=)CH
MP ">%.2_*<JJY:$_DPZO%;"9#_7X1W_ LECB5K4?PU\7ADNR^4#W7!U'HNKS
MJ-?TQXS9H#*!E##"I,:6+$P[#NQ<C&1*W!P[=OUC,^NY9OC]?#/\JERG%2Z0
M7#WK60*=I:[3$.IHGA@@*532*B94:>T0/4?+M&M9S@7/331Y\'G^#9=QT0B3
MFR07YIT1WEQ;MRQA+?OG*5E)\LDQ@5+!U"4'"/3W+O@L'>K6A1U[D#7M7I5S
M06IK_9Y;6\>/BR]?%W/ZAM6B;'56MM?-$S\;-[<,W2]XJYOU9[IVB'827 W4
M4[T1UHMGRK]:=XY,0?RHS2F3:V.B_A=OHO72%/"QT+7@K(% 5@DQ%^%L2J&$
M?T9*[I6<#D4[[WV!XEAMA_81HE$6K-0*G>&9JW]&2IZ@_V4(HJ?J?QF"E3Z"
MZQ<+Y1%3L2QP8(6DK9C.0,PY\,IE(5%%AJW?UO[I?QD*HX']+T-TVC=$=Z_M
MSGE4P2'(4KLY3'UHEW1":)VT=#QY/6X1^/GUOPR"P.#^ER'ZZ -@3]CAG3+V
M70F&\TX7'2.@KO,CD1OP9*04MZ12(C&HK3B)0_6(M&[!=@@@]NIZ.4X['8#N
M1#6W**,79-3@3*B2-QH\XQ(VN_]R<D68UIC]IY>@#S>@0X1U8'>'5O0)GHR(
M&B$;S>H2$0TN.4^*L3H8&;R7H^[W^J>7X'#4->HE& *!J6N_7BUJ5TP4DS?K
M6.L;,"8Z6)(%'P+'8H4EBOZ^O02#-#VHEV" V#LX+$_YX*"%=:[P#,'5J;+:
M" A61B@"8S91B*3YV7DJO_Z]JGC[=E<.PUH'9CB@U.UZ<B FJ:VC"U$+Y/5-
MN"[Z3@[HKR+%7\FQ/$+R_Y^YD2T =_S<R"':/R]\WTP(_.FOKSA?X87003"?
M"V@DH:KB)$2A.!3)<TS,JYA&'=\^C-RW'K6>'/%'X:$#Z#];U.,S=UG8 $:K
M!"IEDJ2HTSG(34195(B2-<;U4>599^R[M %M$TWV4S<XP :OJR.N35 I947
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
M3U8!8^!JP^:E#%,//YP /A>98?CZZ^X?RB_>K=.OO_P+4$L! A0#%     @
MBH!65J/H _-5$0  P&P  !X              ( !     &5X-#%D97-C<FEP
M=&EO;F]F<F5G:7-T<F%N+FAT;5!+ 0(4 Q0    ( (J 5E9Y4\<_6P4  $@V
M   4              "  9$1  !Q-#(P,C)E>&AI8FET,C$Q+FAT;5!+ 0(4
M Q0    ( (J 5E9$[S)9$@0  ),5   >              "  1X7  !Q-#(P
M,C)E>&AI8FET,C,Q+65Y8V]N<V5N="YH=&U02P$"% ,4    " "*@%96,?<E
MA/D'   Z*   %               @ %L&P  <30R,#(R97AH:6)I=#,Q,2YH
M=&U02P$"% ,4    " "*@%96KP\7= $(  "^*   %               @ &7
M(P  <30R,#(R97AH:6)I=#,Q,BYH=&U02P$"% ,4    " "*@%96^&;4QQ0%
M   T$0  %               @ '**P  <30R,#(R97AH:6)I=#,R,2YH=&U0
M2P$"% ,4    " "*@%96$[%WR"(%  !:$0  %               @ $0,0
M<30R,#(R97AH:6)I=#,R,BYH=&U02P$"% ,4    " "*@%961"%1!A&Y P#T
M'RP $0              @ %D-@  <F]C:RTR,#(R,3(S,2YH=&U02P$"% ,4
M    " "*@%96M;Z6R"8<   !1 $ $0              @ &D[P, <F]C:RTR
M,#(R,3(S,2YX<V102P$"% ,4    " "*@%96XW<5O.HQ  "U"0( %0
M        @ 'Y"P0 <F]C:RTR,#(R,3(S,5]C86PN>&UL4$L! A0#%     @
MBH!65E$)YG]2FP  &"X' !4              ( !%CX$ ')O8VLM,C R,C$R
M,S%?9&5F+GAM;%!+ 0(4 Q0    ( (J 5E:IM]#;Q-D! '5  @ 4
M      "  9O9! !R;V-K+3(P,C(Q,C,Q7V<Q+FIP9U!+ 0(4 Q0    ( (J
M5E9+O&]VV0,  '8%   4              "  9&S!@!R;V-K+3(P,C(Q,C,Q
M7V<R+FIP9U!+ 0(4 Q0    ( (J 5E8D_BGH2VT! )]"#P 5
M  "  9RW!@!R;V-K+3(P,C(Q,C,Q7VQA8BYX;6Q02P$"% ,4    " "*@%96
ME=![;;#U   H: L %0              @ $:)0@ <F]C:RTR,#(R,3(S,5]P
<<F4N>&UL4$L%!@     /  \ \ ,  /T:"0    $!

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
